ST. LOUIS -- Two long shots was all it took for the St. Louis Cardinals. Not that Lance Berkman or Yadier Molina were swinging for the fences.
Berkman hit a go-ahead two-run homer in the eighth inning and Molina had a three-run shot in the second, helping the Cardinals overcome a pair of deficits to beat the Pittsburgh Pirates 5-4 on Friday night.
"You're not stepping in the batters' box saying 'I need to hit a home run right here,"' Berkman said. "I don't know that anybody ever does that and if they do, I may have done it a few times, it never works.
|More on Pirates at Cardinals|
"Generally, you're just saying 'Hey, let's get a good pitch to hit."'
Matt Holliday walked with one out in the eighth against Jose Veras (2-4) before Berkman hit his 30th homer.
Berkman didn't think the Cardinals were reliant on the long ball, but pointed out that most top offenses have a lot of power.
"You're not going to score a lot of runs in the major leagues unless you have guys who hit the ball out of the ballpark," Berkman said. "If you want to assemble a different roster, if you don't like home runs, don't watch us play."
Andrew McCutchen had three hits and an RBI for the Pirates, who have dropped seven of 10 and are in a 10-27 tailspin since July 19 when they were seven games above .500.
Pittsburgh opened with three runs in the first but could have made it a much deeper hole for St. Louis.
"A big hit would have blown it open, there's no doubt," manager Clint Hurdle said. "We've been shaking the pom-poms for that throughout the season -- one more hit in the big time with runners in scoring position.
"We were looking for one more hit and we didn't get it."
Hurdle gave no thought to getting closer Joel Hanrahan into the game in the eighth given Veras' reliability. The right-hander had allowed one earned run in 12 1/3 innings his previous 13 appearances and leads Pittsburgh with 68 games.
The homer was the first allowed by Veras since July 31.
"Veras has probably done as much as any eighth-inning setup guy this year as far as pitching through the meat of the order and getting the ball to the closer," Hurdle said. "It was down, but it was working back towards the barrel and into his swing path."
The Pirates had one hit in their final 13 at-bats -- McCutchen was caught stealing after singling to start the seventh -- and they didn't get the ball out of the infield against Kyle McClellan. Manager Tony La Russa said McClellan was pitching so well he had to let him start the ninth, but said Jason Motte would have relieved if Pittsburgh got a man on base.
Berkman reached 30 homers for the sixth time in his career, leaving him one behind teammate Albert Pujols for the NL lead, coming off a career-worst 14 homers in an injury-plagued 2010. The Cardinals' 3-4-5 hitters had been 0 for 8 with three walks before the homer.
"He's had a fantastic year," Hurdle said. "You talk about some fine shopping in the offseason."
St. Louis wore throwback 1985 jerseys in honor of Willie McGee bobblehead night, with the fan favorite center fielder throwing out the first pitch while accompanied by Ozzie Smith and Vince Coleman.
McClellan (10-6) struck out two in two perfect innings for the Cardinals, who overcame a shaky start from Jake Westbrook. Westbrook gave up three runs in the first and matched his season-high with five walks.
"When you have a slow start like that, it's one of those things where you have to tell yourself you can't give up anymore and that's all they get," Westbrook said. "Yaddy had a big homer and Lance an even bigger homer and that's the reason why you have to hang in there and put up zeroes."
The first four Pirates reached safely in the first, with McCutcheon and Ryan Doumit getting an RBI apiece, and Josh Harrison added a sacrifice fly for a 3-0 lead.
Molina's fourth homer in seven games and 12th of the year, adding to a career best, tied it in the second. He has three homers and eight RBI against the Pirates.
James McDonald had been bidding to beat the Cardinals for the second time in three starts. He was lifted after Rafael Furcal's single to start the seventh, leaving up 4-3.
"I made one mistake, one pitch, and it was a three-run homer," McDonald said. "It was a bad pitch and he made me pay for it. Overall, I was pleased."
Fans lined up at least four hours before game-time to get the McGee keepsakes. "That's the kind of tribute he deserves," manager Tony La Russa said. ... Pujols had three walks Wednesday night, two of them intentional and scored three runs. The Cardinals are 60-1 when Pujols scores three times. ... Chris Carpenter (8-8, 3.57) is 12-2 with a 2.33 ERA against the Pirates heading into Saturday's start against Brad Lincoln (0-0, 4.58). ... Five Cardinals pitchers have at least 10 wins counting Edwin Jackson, who won his first seven games with the Chicago White Sox. ... McCutchen's 33rd multihit game followed a 1-for-13 slump.