Lara reached the landmark with a glide to the third man boundary off Andre Nel shortly after tea, reaching 9,000 runs in his 177th innings.
Sachin Tendulkar also passed the mark during his 241 not out against Australia in Sydney on Saturday, his 179th innings.
Lara is just the fifth batsman to score 9,000 runs in Tests, following Tendulkar, Sunil Gavaskar, Allan Border and Steve Waugh.