Kumar Sangakkara scored his 17th one-day international century as Sri Lanka beat Bangladesh by 61 runs to take a 2-0 series lead.
Sangakkara struck a magnificent 128 and shared a 114-run stand with half-centurion Ashan Priyanjan that was pivotal in Sri Lanka recovering from 63 for three to post 289 for six.
That proved to be well beyond Bangladesh who, despite a fine knock of 79 from captain Mushfiqur Rahim, were bowled out for 228.
Lasith Malinga, Sachithra Senanayake, Thisara Perera and Ajantha Mendis picked up two wickets apiece for Sri Lanka as they wrapped up the win with seven overs to spare.
After winning the toss and opting to bat first at the Shere Bangla National Stadium, the tourists found themselves in some difficulty as Kusal Perera, Tillakaratne Dilshan and Dinesh Chandimal all failed to reach double figures.
However, Sangakkara and Priyanjan, who scored a patient 60, helped the tourists recover before captain Angelo Mathews added some late momentum with an unbeaten 56 off 39 balls, including the only six of the innings.
The hosts then suffered a miserable start to their reply when they lost Shamsur Rahman to Malinga in the opening over, but fellow opener Anamul Haque scored 42 in helping them recover to 57 for one.
However, aside from Anamul and then Mushfiqur, no Bangladesh batsman could hang around long enough to cause Sri Lanka any serious problems.
Sri Lanka will now attempt to wrap up a 3-0 series whitewash when they play the third match in Dhaka on Saturday.
View the Original article