Sangakkara and Mahela Jayawardene put on a partnership of 178 runs as Sri Lanka built up a total of 314 for five at stumps on the first day, after recovering from a slow start which saw them lose two wickets for 49 runs after they won the toss and elected to bat.
Sri Lanka claimed victory in the first Test by a massive innings and 248 runs in Dhaka to go 1-0 up in the two-Test series and the hosts will need to dig in deep here if they are to avoid a whitewash before the two Twenty20 and two one-day internationals later this month.
Bangladesh made three changes, with Imrul Kayes making a comeback after more than two years while Mahmudullah and Abdur Razzak came in to replace Robiul Islam and Rubel Hossain.
Sri Lanka brought in bowling replacements Ajantha Mendis and Nuwan Pradeep after injured duo Rangana Herath and Shaminda Eranga returned to Colombo on Monday.
The home side removed the two Sri Lanka openers before lunch with Kaushal Silva (11) the first to lose his wicket in the 16th over as he was lbw to Sohag Gazi after the ball hit him in front of the off stump following an attempted sweep.
Sangakkara took to the field to join Dimuth Karunaratne - who had already hit four fours - but their partnership came to an end five overs later as Karunaratne (31) failed to keep the ball down and was caught off Al-Amin Hossain.
Jayawardene came to the crease next and things started to turn around for Sri Lanka as he and Sangakkara began to dominate the Bangladesh attack.
Mahmudullah claimed the crucial wicket of Jayawardene - who scored 72, including six fours - as he trapped him lbw after the Sri Lankan failed to work the ball away to fine leg to leave them 227 for three.
Dinesh Chandimal was in next and made 27 runs off 38 balls before he was caught by Kayes off Shakib Al Hasan's bowling, which brought Angelo Mathews to the middle.
But the Sri Lanka captain did not stay long before he was bowled for five by Shakib, the spinner's second victim in the space of four overs.
Sangakkara, who hit 19 fours and three sixes throughout the day, and Kithuruwan Vithanage (0no) saw out the last two overs.