初平二年191年),黑山賊於毒、白繞、眭固等率十多萬人攻打魏郡、東郡,東郡太守王肱不能抵禦。
曹操引軍入東郡,在濮陽擊破白繞。
因此,袁紹表曹操為東郡太守,治所在東武陽。
初平三年192年),曹操駐軍頓丘,於毒等人攻打東武陽。
諸將建議曹操回軍救援,曹操欲圖趁機襲擊敵軍本屯,對諸將說:“孫臏救趙而攻魏,耿弇欲攻西安而攻臨淄。讓敵軍知道我軍西進而回撤,則東武陽之急自解。如果他們不回,我就能攻破他們的本屯,他們卻必不能拿下東武陽。”
於是,曹操引兵西入山,攻打於毒等人的本屯。
於毒得知後,放棄攻打東武陽而回軍。
曹操邀擊眭固,又在內黃與匈奴於夫羅交戰,皆大獲全勝。
初平三年192年),青州黃巾軍大獲發展,連破兗州郡縣,陣斬兗州刺史劉岱。
濟北國相鮑信與州吏萬潛等人來到東郡迎曹操領兗州牧。
曹操和鮑信合軍進攻黃巾,戰於壽張之東,鮑信戰死。
曹操“設奇伏,晝夜會戰”,終於將黃巾擊敗。
當年冬天,他獲得降卒三十餘萬,人口百餘萬。
曹操收其精銳,組成軍隊,號稱青州兵。
這樣,曹操又有了一支頗具戰鬥力的軍隊。
同時,袁術與袁紹交戰,向公孫瓚求援。
公孫瓚讓劉備屯高唐,單經屯平原,陶謙也屯兵發乾,以此進逼袁紹。
曹操幫助袁紹擊破陶謙諸軍。
初平四年193年)春天,袁術因糧道被劉表切斷,引軍進入陳留,屯兵封丘,黑山軍及南匈奴於夫羅部都幫助袁術。
袁術令部將劉詳屯匡亭,曹操率兵攻打劉詳,袁術帶兵救援,雙方激戰,曹操大獲全勝。
袁術兵敗,退守封丘,曹操率軍包圍,圍勢未成,袁術又逃往襄邑。
曹操追到太壽,決開渠水灌城。
袁術逃往寧陵,曹操再次追擊,袁術只得逃往九江。
夏季,曹操回到定陶。
當時,陶謙與闕宣共同舉兵,攻取泰山的華、費二縣,接著率軍攻入兗州南部的任城。
秋季,曹操率軍征討陶謙,進兵徐州,向東南擴充套件勢力,攻克徐州十餘城。
曹操與陶謙大戰於彭城,陶謙軍敗退,死亡的人數將近一萬,泗水為之不流。
陶謙退守郯縣,不敢出戰。
不久,曹操軍糧將盡,撤圍回軍。
興平元年194年)春天,曹操回到兗州。
當初,曹操的父親曹嵩和弟弟曹德在前來曹操處途中,被陶謙派兵殺害,因此曹操志在東征。
夏季,曹操再徵徐州,攻破五城,略地至東海,回軍在郯縣擊破劉備、曹豹,又攻破襄賁,所過之處多所殘戮。
東郡守備陳宮對曹操不滿,於是與陳留太守張邈、張邈之弟張超、從事中郎許汜及王楷等同謀叛亂,迎呂布為兗州牧。
當時,只有鄄城和東郡的範縣、東阿兩縣尚在曹操掌握之中,分別由司馬荀彧和壽張縣令程昱、東郡太守夏侯惇等堅守,形勢異常危急。
曹操從徐州趕回,聽說呂布屯於濮陽,遂進軍圍攻濮陽。