ST. LOUIS -- While still shaking out early-season kinks, Albert Pujols found a way to be productive.
Pujols had the tying and go-ahead RBIs, and Kyle McClellan rebounded from a shaky beginning to pitch well in his first career start as the St. Louis Cardinals beat the Pittsburgh Pirates 3-2 on Tuesday night.
Pujols hasn't seemed comfortable at the plate in the opening homestand, grounding into three double plays in one game and entering 2-for-16 with a solo homer.
"How many games we got left? 158? There's no panic, man," Pujols said. "I think the main thing people kind of take for granted is everybody expects me to go deep every day or get three hits.
"I'm out there doing everything I can even though I don't feel good at the plate."
The three-time National League MVP didn't exactly bust out against the Pirates but came through with a sacrifice fly to tie it at 2 in the fifth and bounced a go-ahead single through the left side off Scott Olsen (0-1) in the seventh.
"I think it surprises everybody more when he struggles," Pirates manager Clint Hurdle said. "Getting hits and driving in runs never surprises people, with guys like him."
McClellan, in the rotation because of a season-ending injury to Adam Wainwright, gave up two runs and six hits in six innings. He struck out seven and walked one. The right-hander thought he needed a little time to settle down and get into the flow.
"It took me about three innings before I felt like I kind of got control of everything," McClellan said. "There's definitely a lot more on your shoulders."
Ryan Franklin worked the ninth for his first save in two chances, allowing a two-out hit to pinch hitter Ryan Doumit before striking out pinch hitter Steve Pearce. The 38-year-old closer gave up a tying home run to the Padres' Cameron Maybin with two outs in the ninth of an extra-inning loss in the season opener Thursday and said it was "no doubt" a big deal to follow up with some success.
"I really wanted to get that first one," Franklin said. "I felt like I was locked in, concentrating on everything and taking a little more time than maybe I usually do just because I was grinding.
"It felt real good to get it out of the way."
The Pittsburgh hitters were quiet after Lyle Overbay's 421-foot, two-run homer in the first.
"We're kind of doubting our game plan a little bit," Overbay said. "It's just a matter of making sure we're swinging at our pitches, dictating the at-bat, not letting the pitcher dictate what they want us to swing at."
The Cardinals have yet to score more than three runs during a 2-3 start, the other victory coming on Jaime Garcia's four-hit shutout over the Padres on Sunday. It's the first time that's happened since 1919, when they scored three or fewer the first eight games.
Cleanup man Matt Holliday had a light workout Tuesday and could rejoin the team this weekend. He had an appendectomy Friday.
"We have plenty of offensive weapons to win games," manager Tony La Russa. "Just like we have plenty of pitching to win games. We've just got to do it."
McClellan struck out three in the first inning yet left the mound trailing after hanging a 1-2 curveball on Overbay's shot into the Cardinals' bullpen in right.
The former setup man took Wainwright's spot after going 4-0 with an 0.78 ERA in a sterling spring. He blanked the Pirates on five hits the next five innings and threw 95 pitches in his first start since he was with Class A Palm Beach in 2007.
Miguel Batista (1-0) followed McClellan and gave up a hit and a walk in 1 2/3 innings in his first appearance of the season. Batista is the Cardinals' first 40-year-old pitcher to win a game since John Smoltz on Aug. 23, 2009.
James McDonald didn't allow a hit the first three innings but was gone after 4 2/3 innings when Pujols' sacrifice fly to medium center tied it. Allen Craig had an RBI single in the fourth, and the Cardinals totaled four hits and a walk their last nine at-bats against McDonald, who made his last official spring training start March 11 due to soreness in his left side but worked twice against minor leaguers in the last week of March.
"Health-wise I felt good," McDonald said. "I was just a little antsy out there, maybe a little too high strung."
McClellan led the Cardinals with 68 appearances last year, none longer than two innings. ... The Cardinals hit into two double plays for a five-game total of nine. ... Backup catcher Gerald Laird made his first start for St. Louis and was 0-for-4 with a popup, two strikeouts and a double-play ball.