Kyle Tucker hit a tiebreaking homer in the seventh inning, Yainer Diaz and Chas McCormick also went deep, and Houston rallied past Miami 6-5.
“I thought yesterday's game we put up some really good at-bats and hit the ball pretty well. It just didn't go our way,” Tucker said. “Today we were able to put some runs across the board and the pitching staff did a good job.”
Tucker connected on the first pitch from reliever A.J. Puk (5-5), sending it 422 feet to right-center. The Astros, who dropped the first game of the series at Miami and trailed 3-0 in this one, have won six of nine and hold the second NL wild-card spot.
The Marlins' three-game winning streak ended. They remained one game ahead of the Chicago Cubs for the final NL wild card.
Hunter Brown (9-8) pitched two scoreless innings in his first relief appearance of the season. Ryan Pressly allowed a one-out double by Jesús Sánchez in the ninth but held on for his 28th save in 32 opportunities.
“We've been trying to get it clicking all year long,” Astros manager Dusty Baker said. “It's going to click. It's just a matter of when. Sometimes, you've got to wait on it.”
The Marlins went ahead 5-4 in the fifth when Joey Wendle, who led off with a walk, scored on a throwing error by starting pitcher Cristian Javier. Josh Bell reached on a throwing error by second baseman Mauricio Dubon on the same play.
Dubon was in for second baseman Jose Altuve, who exited with a left knee contusion after fouling the first pitch he saw off his left shin. X-rays were negative, and he is day to day. Altuve finished the at-bat with an infield single - the 1,997th hit of his career.
Baker said Altuve was sore and will be evaluated Wednesday.
McCormick hit a one-out solo shot to right-center in the sixth that made it 5-5 and chased Marlins starter Johnny Cueto.
Cueto allowed five runs, four earned, on seven hits. He yielded a two-run homer to Diaz in the fourth and an RBI groundout to Alex Bregman that got the Astros within 4-3.
Cueto has allowed five home runs in his past three starts.
“Literally, it seems like all the runs he gives up are the home runs,” Marlins manager Skip Schumaker said. "It’s unfortunate because he’s pitching good other than the home runs. It’s costing him."
Jorge Soler hit a two-run homer off Javier in the third, his 30th of the season, to give Miami a 3-0 lead. Soler became the first Miami player with 30 or more homers since Giancarlo Stanton (59) and Marcell Ozuna (37) in 2017.
Javier allowed five runs, four earned, in 4 2/3 innings.
In the fifth, center fielder Jazz Chisholm Jr. and left fielder Bryan De La Cruz collided while trying to catch a fly ball from Tucker. Chisholm was charged with an error and Mauricio Dubón scored to make it 4-4.
“We were both going very aggressively to the ball. We both didn’t hear each other,” Chisholm said. “Just going hard, trying to make a play for our pitcher. It happens. We shook it off and kept playing baseball.”
Chisholm had two hits, including a triple in the second, and stole his 16th base.
The Astros presented first baseman Yuli Gurriel with his 2022 World Series ring before the game. Gurriel played his first seven seasons in Houston. The two-time World Series champion played in 85 postseason games, which ranks third in club history behind Altuve and Bregman.
“He has been so special for me as a rookie manager,” Schumaker said, "and I'm so grateful that he's here because of the influence he has inside that clubhouse.”
The Marlins signed free agent catcher Jorge Alfaro to a minor-league deal.
Astros: OF prospect Quincy Hamilton had core muscle surgery Tuesday and is expected to be sidelined about six weeks. Hamilton was playing for Triple-A Sugar Land.
RHP Justin Verlander (7-6, 3.19 ERA) will start the series finale for the Astros against LHP Jesus Luzardo (8-7, 3.91).
AP MLB: https://apnews.com/hub/mlb
Copyright 2023 STATS LLC and Associated Press. Any commercial use or distribution without the express written consent of STATS LLC and Associated Press is strictly prohibited.