Opener Tamim Iqbal's restrained batting helped Bangladesh reach 193-3 on the first day of the second Test against Zimbabwe on Monday.
At stumps, Iqbal was 74 not out with Shakib Al Hasan on 13, leaving the Zimbabwe bowlers frustrated.
Mahmudullah was the other notable scorer with 56.
Iqbal made two significant partnerships with Mominu Haque (35) and Mahmudullah to lay a solid platform for Bangladesh after captain Mushfiqur Rahim won the toss and elected to bat first.
The day began for Zimbabwe almost perfectly as they dismissed Shamsur Rahman cheaply to leave Bangladesh 6-1.
Shamsur Rahman was the only batsman to be dismissed in the morning session when he was trapped lbw for 2 by Elton Chigumbura.
The umpire's decision was not out but Zimbabwe captain Brendan Taylor called for review.
Mominul Haque and Iqbal helped the side back on track as the pitch gradually slowed and Zimbabwe bowled in controlled aggression. Their 72-run partnership rescued Bangladesh from the early trouble.
Haque was undone by the extra bounce off Panyangara to offer a return catch.
Iqbal, however, stayed solid. Relying mostly on singles, he brought up his first 50 against Zimbabwe in the last over of the lunch session when he took a single off Natsai M'Shangwe. It was his 17th 50 overall for which he had to concede 169 balls, making it easily his slowest 50 ever in International cricket.
Zimbabwe bowlers maintained a disciplined effort throughout the day but could not distract his concentration.
Iqbal formed another important partnership with Mahmdullah who was trapped lbw by Panyangra just after the new ball was taken.
Along with Shakib Al Hasan, he then saw off the day without further trouble.
Tinshae Panyangara claimed 2-29 while Elton Chigumbura returned figures with 1-32 for Zimbabwe.