ST. LOUIS — Ian Kennedy did fine against most of the St. Louis hitters. He just couldn't figure out how to shut down rookie outfielder Tommy Pham and pitcher Lance Lynn.
Pham homered, doubled and drove in three runs, Lynn produced his first multihit game and scored twice, and the Cardinals beat the San Diego Padres 3-1 Sunday.
"Other than those two, I felt pretty good," Kennedy said. "Just eliminate two people in the lineup, Lynn and Pham."
Kennedy has allowed three unearned runs or less in seven successive starts, but is 1-3 over that stretch.
"Those four at-bats kind of changed the game, but other than that, he was good," San Diego manager Pat Murphy said. "Six innings, he gave up three runs. I thought it was a great outing."
Kennedy, who gave up seven hits over the six innings, retired seven in a row between the third and fifth innings.
"I felt I had good command, kept the ball down," he said. "It felt like I'm building off those June starts."
The Cardinals improved to a majors-best 31-11 at home. San Diego has lost five of seven.
Pham was called up from Triple-A Memphis on Friday and starred in his third big league start. He hit his first homer, a two-run drive off Kennedy (4-8) in the third. Pham doubled home Lynn in the fifth.
On Saturday, Pham scored both runs in a 2-1 win.
"He's sparking us, that's exactly what we were hoping for," St. Louis manager Mike Matheny said. "He's delivered, he's in a great spot."
Pham's homer came on a 370-foot shot that gave the Cardinals the lead for good 2-1. The ball barely cleared the wall in left center. Pham temporarily stopped at second base, thinking it was a ground-rule double.
"I didn't know that the signs are out of play," Pham said. "But, I'm just trying to focus on having good at-bats, swinging at good pitches."
Lynn (6-4) gave up three hits and one unearned run in seven innings. He also doubled and singled.
Lynn struck out eight and retired 11 in a row at one point. He has not lost in his last six starts.
"As the game went on, I was able to hit the corners like I wanted to," Lynn said.
The Padres went down in order five times, three times against Lynn.
"We couldn't really put anything together off of him," San Diego second baseman Jedd Gyorko said. "He had good command of his fastball. He was mixing his sinker enough to keep us off balance."
Kevin Siegrist recorded his fourth save in six chances. Closer Trevor Rosenthal was unavailable after pitching in three successive games.
Matt Kemp drove in the Padres' run with a single in the third.
The Cardinals wrapped up a nine-game homestand with a 5-4 mark. San Diego has scored four runs in its last three games.
Cardinals: LHP Jaime Garcia was put on the 15-day disabled list with a groin strain sustained while running the bases against Miami on June 24. LHP Tim Cooney was recalled from the minors and will start on Tuesday against the Chicago Cubs.
Padres: RHP James Shields (7-3, 4.14) will start the first of a three-game series in Pittsburgh against RHP A. J. Burnett (7-3, 2.05).
Cardinals: RHP John Lackey (6-5, 3.30) will start in the first of a four-game set in Chicago against the Cubs on Monday. He will be opposed by LHP Jon Lester (4-6, 3.74).