ST. LOUIS -- A half-inning after the D-backs squandered a bases-loaded opportunity, Cardinals shortstop Jhonny Peralta put a quick end to the Memorial Day matinee at Busch Stadium, launching a walk-off homer to lift the Cardinals to a 3-2 win in 10 innings.
The walk-off victory was the Cardinals' fourth this season and the second to end on a home run. The blast, Peralta's seventh of the year, came off Arizona reliever J.C. Ramirez, who had wiggled out of a mess an inning earlier by striking out the side with two on.
"This is the best feeling that you can feel," said Peralta, who has hit four walk-off home runs in his career. "Home run to win the game? The best."
Arizona tied the game in the eighth with Mark Trumbo's two-run blast off Cardinals reliever Kevin Siegrist. Trumbo's home run halted Siegrist's run of 13 scoreless appearances and cost Cardinals starter Carlos Martinez a chance at his fifth win.
Martinez allowed only two Arizona runners to reach scoring position as he matched his longest start of the season (seven innings) and tied his career-high with eight strikeouts.
"He was throwing perfect strikes away, in, throwing good changeups and sliders, so he did a really good job today," D-backs outfielder Ender Inciarte said of Martinez.
Arizona starter Chase Anderson also provided a quality start, his sixth of the season, but was stung for runs in the first and fourth. A leadoff double by second baseman Kolten Wong set the Cardinals up to take an early lead. Jason Heyward's two-out RBI single in the fourth added to it.
MOMENTS THAT MATTERED Rosenthal pitches a pair: Trevor Rosenthal made his first two-inning appearance since April 28, 2014, to help buy time for the Cardinals' offense to strike. Rosenthal eased through the ninth on nine pitches and then maneuvered through a bases-loaded jam in the 10th. More >
"I'm always thinking about being efficient, but it was definitely good to have that quick inning and be in a spot where he felt comfortable putting me back out there and make his decision easy," Rosenthal said.
Trumbo goes yard: Trumbo provided the otherwise quiet offense with a boost in the eighth when he hit a 1-2 pitch over the wall in center. It was Trumbo's seventh homer of the year and his first since May 12 when he hit a pair of them against the Nationals at Chase Field.
"Until Trumbo's hit, we really didn't do a whole lot offensively," D-backs manager Chip Hale said.
Swing and miss: Martinez worked around a potentially precarious spot in the fifth inning by striking out the bottom three hitters of Arizona's lineup. After consecutive singles by Yasmany Tomas and Chris Owings, Martinez got Tuffy Gosewisch to swing through a full-count fastball. Nick Ahmed and Anderson then whiffed on third-strike curveballs to close the inning and keep the Cardinals' lead at two.
"My focus was on keeping with the game plan," Martinez said through an interpreter. "Don't try to throw too hard. My sinker today was really good, so I tried to stay calm and do what I was doing before to get some strikeouts."
Missed chance: The D-backs had a golden scoring opportunity in the top of the 10th when they loaded the bases with one out against Rosenthal, but he rebounded to strike out Owings and get Gosewisch to ground out to end the threat. More >
"Loved it. That was top-step cheering. I just think it's going to buy him about a dozen more hits if he shows he can do that." -- Cardinals manager Mike Matheny, on Adams foiling a defensive shift by laying down his first career bunt single
With his fifth-inning single, Cardinals outfielder Matt Holliday successfully reached base for the 41st straight game to open this season. His on-base streak is the Majors' second longest to begin a season since 2000, trailing only Albert Pujols' string of 42 consecutive games on base to begin 2008. Pujols' mark is the franchise record and will be one Holliday can tie on Tuesday. Dating back to last season, Holliday has reached base in 43 games in a row.
WHAT'S NEXT D-backs:Archie Bradley, who is still looking for his first win since being struck in the face by a line drive on April 28, will start against the Cardinals on Tuesday (5:15 p.m. MST). In two starts since the injury, which required a stint on the 15-day disabled list, Bradley has allowed eight runs across seven innings.
Cardinals:Jaime Garcia will make his second start of the season when he takes the mound Tuesday. In his first start in 11 months, Garcia worked around five walks to limit the Mets to two runs over seven innings Thursday. First pitch is scheduled for 7:15 p.m. CT.