The Astros grabbed the lead in the fifth, going up 3-1. Colby Rasmus led off with a 406-foot home run in his first regular-season game against the Cardinals since being traded to the Toronto Blue Jays in late July of 2011.
Carlos Gomez followed with a bunt single and Marwin Gonzalez delivered a run-scoring double to the gap in right center to make it 3-1.
Brandon Moss helped the Cardinals cut the lead to 3-2 with an opposite-field home run with one out in the sixth. It was his team-leading 15th homer of the season.
ADAMS GOES DEEP
The Cardinals took the lead in the bottom of the second as first baseman Matt Adams deposited a 1-1 pitch from Doug Fister over the wall in straight-away center.