Matt Downs hit a two-run homer and Jed Lowrie had the go-ahead single in the eighth inning to propel the Houston Astros to a 4-3 win over the New York Mets on Monday night.
The game was tied 3-all when Jordan Schafer reached on an infield single to start the eighth. He stole second with one out and scored on the hit by Lowrie, which reliever Manny Acosta (0-2) deflected into the outfield.
Schafer finished with two hits and scored two runs. Downs' homer came in Houston's three-run sixth after New York knuckleballer R.A. Dickey began the game with five hitless innings.
The Mets tied it by scoring three times in the seventh, including a two-run single by rookie Kirk Nieuwenhuis.
Fernando Rodriguez (1-3) got the last out of the eighth and Brett Myers pitched a perfect ninth for his fifth save.
David Wright and Ike Davis hit consecutive singles to start the seventh and Wright went to third on a flyout by Mike Baxter.
An RBI single by Andres Torres, activated from the disabled list before the game, got New York within 3-1. Pinch-hitter Lucas Duda walked with two outs to load the bases before Nieuwenhuis' single chased starter Bud Norris.
Wilton Lopez retired Ruben Tejada to end the inning.
The Mets have scored 20 runs with two outs in the last seven games.
Dickey gave up three hits in the sixth before he was replaced by Acosta for the seventh.
Norris yielded seven hits and three runs with seven strikeouts in 6 2-3 innings.
Schafer got Houston's first hit with a soft single to left field leading off the sixth. He has reached safely in each of Houston's 23 games, tied for the second-longest streak to start a season in franchise history.
Schafer reached second on a sacrifice bunt by Jose Altuve and went to third on a bloop single by Lowrie that dropped in the outfield not far from third base. Schafer had to slide to get there safely.
Houston went ahead 1-0 on Travis Buck's RBI groundout. Downs followed with his second homer.
Brian Bogusevic reached on an error by second baseman Daniel Murphy after the home run, but was caught stealing to end the inning.
Norris retired the first five Mets before a single by Baxter with two outs in the second. The right-hander struck out Torres to end that inning and pitched a 1-2-3 third.
Norris plunked Tejada with a pitch to start the fourth and Tejada advanced to second on a wild pitch when Norris tripped on the mound with one out. But Norris retired the next two batters to escape the inning.
Buck robbed Torres of a hit in the fifth when he stretched out while sprinting to catch a long fly ball just before the wall in center field.
Nieuwenhuis singled to start the sixth, but was picked off at first while Tejada was batting.
NOTES: Mets starter Mike Pelfrey will have season-ending Tommy John surgery on his right elbow Tuesday. ... Duda was out of the starting lineup because of flulike symptoms. ... Houston 1B Carlos Lee sat out for the third straight game with a sprained left ankle.