Jedd Gyorko and Tommy Pham each homered to help the Cardinals beat the Houston Astros 8-5 on Tuesday night for their third straight win.
Gyorko has 11 of his 18 homers since July 18, including three in his past four games. It's helped keep St. Louis in the NL wild-card race despite injuries to top hitters like Matt Carpenter and Aledmys Diaz.
The Cardinals roughed up ace Dallas Keuchel (7-12) to overcome a rocky outing from starter Jaime Garcia (10-8). Garcia gave up five runs and seven hits in five innings, including three home runs.
Seung Hwan Oh pitched a scoreless ninth, striking out three, for his 12th save.
Houston's Alex Bregman hit his first major league home run in the first in his 78th career at-bat.
The Cardinals evened the score 4-4 in the fifth with Pham's two-run homer and later extended the lead to 8-4 when Gyorko homered off reliever Pat Neshek for his 18th of the season.
Yadier Molina added two RBIs for St. Louis despite going 0 for 4.
Jason Castro had a solo home run for Houston in the sixth.
Carlos Martinez (10-7, 3.34) will try to get his first win in four starts. He has a 7.36 ERA across his first two August starts after entering the month with a 2.99 ERA on the season.
Doug Fister (11-7, 3.61) looks to replicate earlier success against St. Louis. He allowed five hits and two runs in 7 1/3 innings against the Cardinals on June 14, earning the win. He also won his last start against Minnesota despite allowing five runs and eight hits in seven innings.