HOUSTON -- Scott Moore homered for the second straight day and J.D. Martinez and Jose Altuve had three hits each as the Houston Astros took advantage of the first-inning ejection of Zack Greinke to get a 6-3 win over Milwaukee and break a season-long nine-game losing streak on Saturday.
Greinke (9-3) entered the game looking for his 10th win; instead he was gone after four pitches -- ejected after spiking the ball following a close play at first base.
Manager Ron Roenicke was also tossed for arguing the call and the Brewers were forced to piece together the game with six relievers.
The Astros were up 1-0 after the first inning and jumped on Livan Hernandez, who took over for Greinke, for three runs in the third.
Houston starter Wandy Rodriguez (7-6) yielded four hits and two runs with five strikeouts in 5 1-3 innings. Brett Myers pitched a perfect ninth for his 18th save.
Jordan Schafer and Jed Lowrie collected two hits apiece and Jason Castro drove in two runs as the Astros scored more runs than they had in the last three games combined to get their first win since June 27.
Things went wrong for Greinke immediately when Schafer took his first pitch to center field for a leadoff triple. Three pitches later it got much worse when he raced to cover first base on a grounder by Altuve and spiked the ball when the All-Star speedster was called safe, leading to his ejection by first base umpire Sam Holbrook.
Roenicke immediately raced out to argue the call and was ejected for the first time this season.
Schafer scored on the play where the pair was ejected to put Houston up 1-0.
Moore opened Houston's third inning with his homer to right field to make it 2-0 and give him three home runs in eight games since being called up from Triple-A Oklahoma City.
Martinez followed with a single before scoring on a double by Lowrie. Lowrie scored on a sacrifice fly by Castro later in the inning to push the lead to 4-0.
Schafer singled with one out in the fourth inning and picked up his 20th stolen base when he took second. Altuve walked before Schafer advanced to third on a fly out. He scored on an error by Martin Maldonado when the catcher overthrew second base trying to pick off Altuve.
Lowrie singled off Randy Wolf, a starter who was making his first relief appearance since 2001, to start the fifth. Chris Johnson doubled before Lowrie scored on a sacrifice fly by Castro to leave Houston up 6-0.
Rodriguez had retired 14 of his last 16 when Ryan Braun reached on an error by Moore with one out in the sixth inning. Aramis Ramirez singled and Corey Hart drew a walk to load the bases.
The Brewers got on the board thanks to another error by Moore, when he stopped a sharply hit grounder from Rickie Weeks, but dropped the ball before he stepped on third base. That allowed Weeks to reach, Braun to score and chased Rodriguez.
He was replaced by Fernando Rodriguez, who retired the next batter before Ramirez scored on a wild pitch to cut Houston's lead to 6-2. Moore capped off his rough inning by catching a fly ball by Cesar Izturis in foul territory to end the inning.
Cody Ransom added a run for the Brewers with an RBI double in the eighth inning.
NOTES: Milwaukee RF Norichika Aoki singled in the third inning to extend his hitting streak to 14 games. ... Houston OF Justin Maxwell, on the DL with an injured left ankle, went 1 for 2 with a double in a rehabilitation assignment with Oklahoma City on Friday night. ... These teams wrap up the series on Sunday when Milwaukee's Marco Estrada opposes right-hander Jordan Lyles.