HOUSTON -- Bill Hall was happy for another chance to help the Astros with the bases loaded in the ninth inning after he grounded into a double play in the same situation in the seventh.
Brian Bogusevic came home on a wild pitch by closer Mitchell Boggs (0-1) earlier in the inning. He singled before taking second on a passed ball. Michael Bourn bunted and reached first on an error by Boggs that got Bogusevic to third to set up the score.
"Anytime somebody gets ... [on base] to give me a chance to hit and I don't succeed, I'm pretty upset with myself, I want another shot," he said. "I was able to get another shot. I hit the same ground ball and if they're in double play depth it's probably another double play ball, but being that it was infield-in, it found a hole."
Boggs was disappointed in his performance that not only gave him the loss, but his first blown save of the season.
"The wild pitch with a guy on first is unacceptable in the ninth inning, so yeah, I did things to put myself in a hole that was hard to get out of," he said. "They made me pay for my mistakes."
Pence homered and Chris Johnson drove in a pair of runs for Houston.
Lance Berkman put the Cardinals on top 5-4 with a ninth-inning RBI double off Brandon Lyon (2-1) before Hall ruined his homecoming. He said before the game that being at Minute Maid Park as a visitor was a bit sad and lamented not being able to finish his career in Houston.
He enjoyed the reception he received, but was upset his new team didn't get the victory.
"It's my job to drive guys in when I have the chance, and I had the chance to do it in the ninth to give us a chance to win the game," Berkman said. "They did a great job coming back. The bottom line is that we didn't win the game, and that's not good."
Berkman played 12 seasons with the Astros before being traded to the Yankees last year and signing with the Cardinals in the offseason.
He got a standing ovation on his first at-bat and singled before he was picked off trying to steal second. Though the crowd was overwhelmingly supportive, there were a smattering of boos each time he came to the plate and two men sitting beside each other had dueling signs addressing his return. One read: "Berkman's a traitor" and the other said: "Berkman is the man!"
Lyon allowed two hits and a run in the ninth for the win.
Bogusevic's ninth-inning single came in his first at-bat in the majors this season after being called up from Triple-A Oklahoma earlier Tuesday. He arrived at Minute Maid Park from Round Rock, near Austin, where Oklahoma was playing in time to see the second pitch of Tuesday's game.
"It was a long afternoon and it kind of took the first couple of innings just to relax for a minute," he said. "I figured I might get in at the end of the game and just try to do something."
Hall hopes the come-from-behind win will help the 9-14 Astros get on the right track.
"These are the games we need," he said. "We definitely need a good homestand with a lot of victories and this is a good way to start out."
Daniel Descalso's third extra-base hit and second double of the game drove in Yadier Molina and tied it at 4 in the eighth inning. Descalso entered the game with an 0 for 9 streak and finished with a career-high three RBIs.
Reliever Jeff Fulchino retired Mark Hamilton in the eighth before Albert Pujols pinch hit. Pujols was out of the lineup as a precaution after experiencing mild tightness in his right hamstring on Sunday. The Astros intentionally walked him, but Houston was able to limit the damage when Fulchino retired Colby Rasmus.
Houston had a chance to extend the lead in the bottom of the seventh after a bunt single by Bourn, a single by Pence and an intentional walk to Carlos Lee with one out loaded the bases. Reliever Miguel Batista escaped that jam when Hall grounded into a double play to end the inning.
Sanchez singled in the sixth inning before Lee reached on an error by third baseman David Freese with one out. Garcia loaded the bases by walking Hall before an RBI single by Brett Wallace made it 3-2 and chased Garcia.
Pence cut the Cardinals' lead to 3-1 with his home run to left field off Garcia in the fourth inning. Pence's fourth of the year was the first homer allowed by Garcia this season.
Freese reached on an error at shortstop by Sanchez with two outs in the fourth inning. Molina followed with a single to right field before Nick Punto drove Freese in with a double to right field to put St. Louis up 1-0. Descalso made it 3-0 with a triple that scored Molina and Punto. Norris retired Garcia for the third out.
St. Louis SS Ryan Theriot was scratched from the lineup Tuesday night because of soreness on the right side of his rib cage. Manager Tony La Russa said Theriot was hurt during batting practice and that they would know more about his condition on Wednesday. ... Houston OF Jason Michaels was placed on the 15-day disabled list with a separated left shoulder. Bogusevic was recalled from Triple-A Oklahoma to take his roster spot.