第一次起义失败后,中共上海区委又着手研究和准备发动第二次起义。第二次起义的政治目标并没有改变,仍是要建立上海市民自治政府,由资产阶级左派出来掌握政权。但对于暴动的主力与领导,不再寄希望于资产阶级和国民党左派;运动的方式,改为全部以民众式的暴动来达成。由于北伐军夺取九江后没有立即东下,暴动计划一度暂停,改为领导工人参加和平的市民自治运动。另一方面,在发展和健全各级工会组织的同时,加紧对工人进行军事培训。
1927年2月16日,新的上海区委召开第一次全体会议,决定独立领导一次以工人为主的武装暴动,表现并树立工人阶级的势力,通过强有力的群众运动,遏制蒋介石对列强的妥协。暴动的政治目标,不再强调帮助资产阶级建立自治政府,而是有了自己夺权并掌握一部分政权的准备。
2月17日,北伐军占领杭州。同日,中共中央决定发动罢工。但还未等到中共中央和上海区委作出适当部署,上海全市的总同盟罢工便爆发了。2月18日晚,上海总工会召开代表大会。会间传来北伐军占领嘉兴的消息,与会者群情振奋,一致决议自19日起举行全沪工人总罢工,目标是援助北伐军,打击孙传芳,夺取上海,并强调此次罢工是政治性罢工,绝对不能有经济要求。19日,罢工人数达到15万,20日增至27万,21日又增至35万,22日达到36万以上。其时上海小报中有两首打油诗,这样描述当时的罢工情景: