ST. LOUIS -- Lance Berkman had a Cinco de Mayo to remember.
The Cardinals right fielder blasted a three-run home run in the bottom of the eighth inning, got a curtain call from the crowd and took satisfaction in helping his team pull out a 6-3 victory over the visiting Marlins on Thursday.
"It was good to win a game," Berkman said. "It was tough, hard-fought. I felt good about putting us up right there, so all in all a real good day."
The 35-year-old Berkman, who hit the second of his team-high 10 home runs this season batting right-handed, now leads the Major Leagues with 32 RBIs. His 10 homers are tied with Ryan Braun for second, behind only Alfonso Soriano's 11.
"I'm just going up there and trying to have good at-bats," he said. "It's been a good run."
The Cardinals (18-14), who split the four-game series with the Marlins (19-11) to improve to 8-8 at home, had lost 16 of their last 18 games on Cinco de Mayo.
It seemed like that trend might continue on Thursday against Marlins ace Josh Johnson, who entered the game with a 3-0 record and an 0.88 ERA and had not allowed more than three runs or more than five hits in any of his first six starts.
But the Cards recorded three singles in the first inning off Johnson, who had allowed three hits or fewer in four of his first six starts. Singles by Colby Rasmus and Albert Pujols set the stage for an RBI single to right by Matt Holliday, who gave St. Louis a 1-0 lead and extended his hitting streak to 11 games.
Cardinals starter Jake Westbrook retired the first 14 batters he faced -- with eight groundouts, five strikeouts and one flyout -- until Greg Dobbs singled with two outs in the fifth inning.
That turned out to be the first of four straight singles for the Marlins, and back-to-back RBI singles by Omar Infante and Johnson gave Florida a 2-1 lead.
The Cardinals tied the score in the sixth inning after manufacturing a run. Rasmus drew a leadoff walk, went to second on a single by Pujols and took third on a flyout before scoring on a sacrifice fly to deep left field by Berkman.
The Marlins went ahead, 3-2, in the seventh after John Buck hit a one-out double to the wall in right-center and Infante followed with an RBI single up the middle that chased Westbrook from the game.
Westbrook's 6 1/3 innings marked his longest outing of the season. He allowed three runs (all earned) on seven hits and struck out eight batters without walking any in his 100-pitch start.
"I think it's me getting back in the zone, me being aggressive, me finding that rhythm early on and just kind of riding it out," Westbrook said. "That's what I'm capable of doing if I get into that pattern of attacking the zone and using my sinker and getting ahead of guys. Hopefully I can keep that going."
The Cardinals' four-run eighth gave reliever Jason Motte (1-0), who pitched a scoreless frame, his first win of the season.
Rasmus and Pujols both singled with one out before Holliday followed with a bloop RBI single to shallow right field to tie the score at 3 and chase Johnson from the game after 114 pitches.
Marlins manager Edwin Rodriguez called on lefty Mike Dunn to make the switch-hitting Berkman bat right-handed, and the veteran deposited the first pitch he saw into the left-field seats for the three-run home run.
"He throws hard," Berkman said. "Nobody's perfect. He probably wasn't going to go all year without giving up a run. So I was trying to be aggressive, and hopefully he makes a mistake in the strike zone. You're not going to get him too many times."
Johnson (3-1) took the loss after allowing five runs (all earned) on eight hits in 7 1/3 innings. He struck out seven and walked four.
Cardinals rookie reliever Eduardo Sanchez came on in the ninth, and despite a pair of walks, he converted his third save opportunity in as many tries.
"I don't know how good we're going to be in the end, because we have things we need to improve, but the character of this club is outstanding," Cardinals manager Tony La Russa said. "We've shown that already in the first month, and I don't think that's going to change. I think that's who we are.
"They were ready to play after a loss. They played against a great pitcher and a really good team and found a way to win. It's a special win."
Nate Latsch is a contributor to MLB.com. This story was not subject to the approval of Major League Baseball or its clubs.