Cards survive Pirates

Carpenter shaky, but St. Louis rallies

? Chris Carpenter blew a four-run lead in his worst outing since his 13-game winning streak began in mid-June, but St. Louis rallied on David Eckstein’s ninth-inning RBI single for a 5-4 victory Tuesday over Pittsburgh.

Jim Edmonds and Yadier Molina homered for the Cardinals, who are 12-3 this season against the Pirates and reduced their magic number for clinching the NL Central to two. They have won the first two games of the series despite getting outhit 24-13.

Ryan Doumit singled, homered and doubled for the Pirates, who have lost 15 of 18.

Marlins 4, Astros 2

Houston – Juan Pierre walked in the seventh when umpires said Wandy Rodriguez touched his mouth with his hand while on the mound, and Paul Lo Duca followed with a tiebreaking, two-run homer.

Phillies 5, Braves 4

Philadelphia – Mike Lieberthal drove in the go-ahead run with a two-out single in the sixth to lead Philadelphia.

Nationals 4, Mets 2

New York – Hector Carrasco filled a hole in Washington’s rotation with a solid spot start, and the Nationals used a three-run third to beat New York.

Cubs 4, Reds 3, 10 innings

Chicago – Todd Walker’s long single with the bases loaded in the bottom of the 10th gave Chicago the victory. Derrek Lee hit his 42nd homer for the Cubs, who have won nine of 12.

Brewers 3, Diamondbacks 1

Phoenix – Carlos Lee and Geoff Jenkins hit back-to-back solo homers, helping Chris Capuano (17-9) beat Arizona to become Milwaukee’s first 17-game winner in 13 years. J.J. Hardy also drove in a run for the Brewers (72-72), who have won six of eight to reach .500 for the first time since Aug. 7.

Giants 5, Padres 4

San Francisco – Barry Bonds singled and walked twice in his second game of the season, and Mike Matheny hit a pair of RBI doubles, leading San Francisco.

Rockies 6, Dodgers 4

Los Angeles – Clint Barmes triggered a six-run second with a two-run single with the bases loaded, and Colorado held on.

Sun-Woo Kim (5-2) won his third straight decision over four starts, allowing four runs and five hits in five innings after being staked to the 6-0 lead.