Zimbabwe 304 (Taylor 110, Taijul 5-107, Mehidy 3-61) and 76 for 2 (Chari 43) need another 367 runs to beat Bangladesh 522 for 7 dec (Mushfiqur 219*, Mominul 161, Jarvis 5-71) and 224 for 6 dec (Mahmudullah 101*, Mithun 67)
Dhaka: Mahmudullah scored his first Test century in more than eight years as Bangladesh set Zimbabwe a towering 443-run target to win the second Test in Dhaka on Wednesday.
The hosts began their victory push, reducing Zimbabwe to 76-2 at stumps on the fourth day after Mahmudullah's unbeaten 101 off 122 balls helped the side declare the second innings on 224-6.
Off-spinner Mehidy Hasan broke a 68-run opening stand by removing Hamilton Masakadza for 25 after he dropped the Zimbabwe captain on five off debutant pacer Khaled Ahmed.
Mehidy also dropped Brian Chari on naught but fellow spinner Taijul Islam dismissed the opener for 43 soon after Bangladesh got their first breakthrough.
Brendon Taylor and Sean Williams remained at the crease on four and two respectively, facing a monumental task to win or avoid a loss as Zimbabwe still trailed the hosts by 367 runs.
Zimbabwe lead the two-match series 1-0 after last week's victory in Sylhet their first away Test win in 17 years.
A draw in the game would give them their first Test series win in seven years.
Bangladesh, who must win to square the series, declared their innings at the tea break after Mahmudullah completed his century by pushing leg-spinner Brandon Mavuta towards cover for two runs.
Mahmudullah, whose only other Test ton came against New Zealand at Hamilton in 2010, lifted Bangladesh from a precarious 25-4 after Zimbabwe seamers rattled the home side early on day four.
The right-hander shared an 118-run stand for the sixth wicket with debutant Mohammad Mithun, who made amends for his first innings duck to score 67 off 110 balls.
Mahmudullah hit four fours and a six in an impressive innings, with his last 51 runs coming off only 52 balls.
Zimbabwe had successes against Bangladesh early in their second innings, after the hosts decided against enforcing the follow-on despite their 218-run first innings lead.
Kyle Jarvis removed openers Imrul Kayes and Liton Das in the space of three balls in the fifth over for three and six runs respectively.
First-innings centurion Mominul Haque quickly followed the openers, edging Donald Tiripano to wicketkeeper Regis Chakabva for one in the next over.
The slump continued as Mushfiqur Rahim, who scored 219 in the first innings, pulled a straight catch to square leg fielder Mavuta to depart for just seven.
But Mithun and Mahmudullah stemmed the bleeding, slowly building their partnership.
Zimbabwe were all out for 304 earlier on the third day, replying to Bangladesh's mammoth first innings total of 522-7 declared.