张方劫持惠帝司马衷强行迁都长安,引得天下群情激愤。东海国中尉刘洽劝东海王司马越顺应民心起兵勤王,这也正合司马越心意,他立即同意。
永兴二年(305)七月,司马越召集将士起兵勤王,他向在崤山(位于今河南西部,洛阳与长安之间)以东的各征(指征东、征南、征西、征北四将军)、镇(指镇东、镇南、镇西、镇北四将军)、州、郡发布檄文,檄文上说:“让我们同心协力,集结正义之师,奉迎天子返回洛阳!”
徐州都督东平王司马楙看到檄文后惶恐不安,长史王脩(xiū)劝他道:“东海王在皇族中颇有声望,如今他起师勤王,您应该审时度势,把徐州让给他,这样既保全了自己,也收获了好名声。”司马楙权衡利弊,照办了。司马越遂兼任徐州都督,司马楙自称兖州刺史、车骑将军。
司马越为人谦和,年轻时就有美名,这时司马越的兄弟又都是一方大员,影响力很大,于是范阳王司马虓和王浚等人共同推举司马越作为勤王军的盟主。不断有官员前来投靠,司马越择优任用他们为各地刺史、太守。
司马越任命琅琊王司马睿为平东将军、都督徐州诸军事,在下邳驻防,司马睿请来琅琊王氏子弟王导担任司马,把军事事务全交给他处理。王导,字茂弘,是王祥弟弟王览的孙子。
司马越亲率三万精兵向长安进军,驻扎在萧县(今安徽萧县西北),司马虓则从许昌推进到荥阳(今河南荥阳市)驻扎。豫州刺史刘乔也起兵响应司马越,出于政治、军事上的考虑,司马越任命刘乔为冀州刺史,让司马虓接任豫州刺史。这下刘乔不干了,他认为这不是御诏,于是出兵抵制。当时司马虓任用刘琨为司马,司马越任用刘藩为淮北护军、刘琨的哥哥刘舆为颍川(今河南禹州市)太守,刘乔便给朝廷上书,罗列了刘舆兄弟的种种恶行,随后率兵攻打许昌。他还派长子刘祜率军阻挡司马越大军,导致司马越前进不得。
东平王司马楙在兖州任上横征暴敛,各郡县都不堪重负。范阳王司马虓派苟晞回兖州任刺史,调司马楙为都督青州诸军事,司马楙不接受,背叛了联军,与刘乔联合到了一起。