Lehr (2-0) lasted six-plus innings and got the win for the Reds, who had lost 16 of 20 games coming into the contest.
Albert Pujols hits his major league-leading 37th home run and Yadier Molina went 3-for-4 for St. Louis.
Mitchell Boggs (1-1) took the loss, allowing four runs on nine hits in six innings. Boggs was pressed into the starting slot when Todd Wellemeyer was placed on the 15-day disabled list with an injured right elbow.
The Reds scored three runs in the first inning on Nix's two-run double and an RBI infield single by Jonny Gomes, and added another run in the second. Alex Gonzalez drove in the fifth Cincinnati run in the eighth.