Craig Biggio scored two runs and had two hits, while Carlos Lee scored a run and drove in one run for Houston. Four other Astros drove in runs as Houston those with an RBI, had a run and two hits for the Astros.
Houston has split its last four games and now trails NL Central-leading Milwaukee by seven games.
Rodriguez walked two batters and struck out three.
Loser Doug Davis (2-4) gave up four runs -- three earned -- on six hits in 4 1/3 innings.
Biggio (1,799) passed Ted Williams (1,798) for 15th all-time in runs scored, and his two doubles give him 649 for his career, placing him seventh all-time, eight behind Nap Lajoie (657).