Sri Lanka, who began the day needing 74 more runs to make Pakistan bat again, were all out for 391 in the post-lunch session with Kumar Sangakkara making 192.
Pakistan declared their second innings at 100-2 just after tea, leaving Sri Lanka a target of 261 in 37 overs to record an unlikely win.
The hosts were 86-2 in 22 overs when the match was called off.
Sri Lanka head for the third and final Test in Pallekele from Sunday with a 1-0 lead, having won the opening encounter in Galle by 209 runs.
Brief scores:
Pakistan 551-6 declared and 100-2 declared; Sri Lanka 391 and 86-2. (AFP)