ST. LOUIS — It takes more than a sore wrist and back to stop Yadier Molina.
The Cardinals catcher said he hurt himself when he swung at Joakim Soria's changeup in the ninth inning.
After a short break to check out it out, Molina shrugged off the pain to drive in the game-winning run, lifting St. Louis to a 3-2 victory over the Chicago White Sox on Tuesday night.
"That was a tough pitch. It was a slow pitch," Molina said about his swing and miss. "My hand, my wrist, my back, everything hurt. Then I was back to normal.
"I got a changeup. I was just trying to make contact and hit a line drive somewhere."
Soria (0-1) said the delay after the first pitch to Molina didn't bother him.
"I executed my next pitch and it was a pitch I wanted, a changeup in and he hit a ball really well to the line," Soria said. "In those types of situations I felt I made really good pitches and they were on it, so at some point you have to tip your cap to the other team."
St. Louis manager Mike Matheny praised Molina.
"Yadi is just amazing," Matheny said. "Put him in there in those big situations and he takes it to another level. I don't know how he does it."
Matt Carpenter hit his 100th career home run and first since April 10 to start the ninth-inning rally.
"I was trying to get ahead in the count," Soria said. "I was behind and I tried to make my pitches. I threw a changeup that stayed too long in the zone and he hit it out."
Carpenter, who is hitting .170, said he hopes the homer can get him going.
"In the last three weeks, I feel like I've been putting it together," he said. "I put together an ugly first month. For me, this is a good feeling to have a day like this but more importantly, for our team."
St. Louis snapped a three-game losing streak.
With one out, Marcell Ozuna doubled off the right-field wall. Molina then smashed a single to left field to score Ozuna.
In the game, Molina tied Hall of Famer Johnny Bench at 1,742 games for 16th in career games caught.
"It's an honor to tie Johnny Bench," Molina said. "It's a great honor. To get the win for the team, it's a special night for me."
Bud Norris (1-0) picked up his first win of the season with a perfect ninth.
The White Sox wasted a good start by James Shields, who pitched six strong innings after giving up a leadoff home run.
Tommy Pham hit a 3-2 fastball off him for a 454-foot home run into the left-field seats. It was his first leadoff homer in his career and the second this season for St. Louis.
Shields retired the next 15 batters before giving up a single to Kolten Wong in the sixth. He allowed just two hits. Shields, who has not won since opening day, struck out four and did not walk a batter.
The White Sox scored twice in the fourth to take the lead. Trayce Thompson and Adam Engel drew one-out walks. After Shields struck out, Yoan Moncada doubled home both runners. His sinking fly ball got past Ozuna, who was trying for shoestring catch.
Michael Wacha pitched five innings in his second career appearance against the White Sox. He walked three and allowed hits.
The Cardinals ran themselves out of a scoring chance in the seventh.
Against reliever Bruce Rondon, St. Louis had a runner at third with one out. Ozuna hit a hard to grounder to Jose Abreu, who threw home to nail Carpenter trying to score.
The St. Louis sent right-hander reliever Mike Mayers to Triple-A Memphis and called up first baseman Luke Voit, a St. Louis native. The 27-year-old began this season on the disabled list with an oblique strain. He was batting .205 in 12 games at Memphis following his return. As a rookie in 2017, Voit batted .246 with four home runs and 18 RBIs. Mayers is 0-0 with a 1.35 ERA and one save in four relief appearances covering 6 2/3 innings this season.
Tuesday's game was manager Mike Matheny's 1,000th with the Cardinals. He is just the fourth manager to pilot the club in 1,000 or more regular-season games. Matheny succeeded Hall of Famer Tony LaRussa as skipper in 2012. In his first four seasons, the Cardinals got into postseason play. St. Louis reached the World Series in 2013.
White Sox: RHP Danny Farquhar continues to show progress after his April 21 surgery for a brain aneurysm. He has taken a few short walks with his wife, Lexie. He is listed in neurologically stable condition ICU for next few weeks.
Cardinals: RHP Adam Wainwright (elbow inflammation) played catch before the game. "If all goes well and he feels good, he is scheduled to throw a bullpen tomorrow," said John Mozeliak, the team president. "We just have to be smart about this."
White Sox: Lucas Giolito (1-3, 7.71 ERA) will be making his first career appearance against St. Louis. He snapped a three-game losing streak in his last start against Kansas City.
Cardinals: Carlos Martinez (2-1, 1.43 ERA) will be facing the White Sox for the first time. He has had consecutive no-decisions in his last two starts. The Cardinals have won each of his last five starts since opening day.