Sri Lanka, who won the toss for the second time in the series, recovered from 7-2 to reach lunch on 76-2, with Lahiru Thirimanne and Angelo Mathews – who frustrated England in the opening Test – looking steady.
Anderson sat out the first Test, which England won by seven wickets, with Stuart Broad filling the role of senior seamer with aplomb.
Anderson for Broad was England’s only change, but Sri Lanka made three. Oshada Fernando came in at No3 for Kusal Mendis, who broke a run of four straight ducks in the opening Test. And they dropped two all-rounders, Dasun Shanaka and leg-spinner Wanindu Hasaranga, for Ramesh Mendis and seamer Suranga Lakmal. Mendis, an off-spinner, is on debut.
Anderson had Kusal Perera caught at first slip by the reaching Joe Root. Not for the first time, this was a horrible shot from Perera, who was aiming down the ground. Perera had already survived an umpire’s call lbw shout during Sam Curran’s opening over.
Four balls after taking his first wicket, Anderson had another, with Oshada Fernando chopping on to a ball that just rose a touch. Anderson’s opening five-over spell cost just four runs.
But Thirimanne and Mathews settled in to share a very tidy 69 by lunch. England’s spinners Jack Leach and Dom Bess could not extract much turn from a surface that looks better for batting than the first Test pitch.