The Delhi batsman, on his way to another three-digit figure, also completed quickest 1000 runs in a calender year with a whopping average of 77.15. He has now scored his fifth century in last eight matches.
It was Raina who scored the winning run with a hit over extra cover off Tillakaratne Dilshan as India reached 255 for four.
Raina's 51-ball 58 was his 24th half century and eighth against Sri Lanka.
Both Kohli and Raina blunted Sri Lanka's spin attack and batted beautifully. Raina may not be as prolific numbers as Kohli but batting at number 5 and 6, he has more than pulled his weight.
Image: India's batsman Virat Kohli, right bats as Sri Lanka's wickets keeper Dinesh Chandimal, left watches during the fourth one-day international cricket match between India and Sri Lanka in Colombo, Sri Lanka, Tuesday, July 31, 2012.