Those three middle-of-the-order hitters reached base a combined nine times, scored three runs and drove in four in the series-opening win.
"It's really important right now to win these games," said Peralta, whose final hit came off Logan Ondrusek with runners on the corners and one out. "I know they're trying to play for the double play. He has a pretty good sinker, but I tried to put the ball in the air."
The Cardinals, now 2 1/2 games out of first in the National League Central, further buried the Reds in that same division race. Cincinnati has lost seven of nine and sits 6 1/2 games back of St. Louis. Its bullpen has allowed 17 runs (16 earned) in eight innings over the last two days.
"I hated to have to use Logan in that situation," said Reds manager Bryan Price, who was short three arms in his bullpen.
The Cardinals have had their own bullpen concerns and were without Pat Neshek on Monday, but this ending massaged those worries from further swelling. This game required 10 innings because Rosenthal, a day after having to be bailed out of a save situation after walking the bases loaded, blew his fifth save opportunity of the season.
Cincinnati speedster Billy Hamilton caused the ruckus with a walk, stolen base (his 46th of the season) and advancement to third on a throwing error by catcher A.J. Pierzynski. Jay Bruce drove home the tying run with the double. The inning may have unraveled further, too, if not for a sprinting grab by Jon Jay, who had just been moved to right field as part of a defensive shuffle.
"We just walked the wrong guy," manager Mike Matheny said. "You put that guy on base and we're in straight defense mode trying to figure out how to limit the damage."
It took Rosenthal 22 pitches to get through his latest complicated inning. He had inherited a lead after Pierzynski plated Peralta as the go-ahead run in the eighth.
"It's not fun giving up those leads," Rosenthal said, "but it is fun watching us battle back, especially down the stretch here."
The Cardinals' bullpen had held strong until Rosenthal's blip. Carlos Martinez, in his first appearance since being recalled from Triple-A, took over in the sixth and pitched two scoreless innings.
"That was probably the biggest play of the game," Masterson said of Martinez's work
When Sam Freeman ran into bases-loadd trouble in the eighth, Seth Maness helped him out. Oscar Taveras' running catch at the right-field wall also was key in keeping the Reds from scoring in that inning. Nick Greenwood, following Rosenthal, retired the side in order in the 10th.
The Cardinals had built up a 3-0 lead for Masterson, whose outing went awry in the fifth. After extending his scoreless-inning streak to 11, Masterson allowed the Reds to score four times in a five-batter span, punctuated by Bruce's three-run homer to give the Reds a 4-3 lead. Brayan Pena and Zack Cozart had opened the innings with doubles. Starter Mike Leake reached when he was hit by a pitch.
Masterson later pinpointed the problem with ease -- "My arm started dragging behind," he explained -- but now has to learn to rectify it more quickly.
"A couple steps forward, maybe a half step back," Masterson said of his night. "But now we'll continue to leap forward into the next one."
Needing 30 pitches to get through the inning, Masterson wouldn't return. He threw 90 pitches in all, but had a loss wiped away when the Cardinals clawed back to tie the game against Leake in the seventh with an RBI double by pinch-hitter Daniel Descalso.
The Cardinals scored four times in Leake's seven-inning start, including a pair of first-inning runs on two-out RBI hits by Adams and Peralta. Holliday snapped a personal 0-for-18 skid with an RBI single in the third.
"We put together good at-bats late in the game to come back and eventually win the game," Descalso said. "Adversity happens, and you have to hang with it and keep fighting."