Brian Kersey, Associated Press
Chicago Cubs' Felix Pie looks up as he heads toward home plate after hitting a three-run home run.

CHICAGO — Ronny Cedeno found out 30 minutes before the first pitch he'd be starting instead of sitting. Felix Pie, who has spent more time in the batting cage than on the field recently, entered as a defensive replacement in the eighth.

After Carlos Zambrano and Aramis Ramirez helped the Cubs take a precarious one-run lead after seven innings, it was reserves Cedeno and Pie who sparked a five-run eighth as Chicago beat the New York Mets 7-1 on Monday night.

Cedeno started a key double play in the sixth and had a two-out, bases-loaded single in the eighth off reliever Aaron Heilman. Light-hitting Pie followed with a three-run homer off Jorge Sosa to ice Chicago's 12th win in 15 games.

"I was not supposed to play today, but after they told me I put myself mentally in the game," said Cedeno, who played when starting shortstop Ryan Theriot was a late scratch with a sore back.

"I'm so happy for Felix."

Pie, who was batting .143 entering the game, has been spending most of his time restructuring his batting stroke with manager Lou Piniella offering advice. The Cubs even called in minor league hitting instructor Dave Keller on Monday to work with him.

National League

BRAVES 7, NATIONALS 3: At Atlanta, Tim Hudson pitched six scoreless innings before tiring and drove in two runs, leading the Braves past the Washington Nationals 7-3 on Monday night for Atlanta's fifth straight win. The Braves have allowed only six runs during their winning streak, which pushed them above .500 for the first time this season at 10-9. Washington keeps falling further and further back in the NL East race. The Nationals lost their third in a row and have dropped 15 of 17 since starting the season with three straight wins.

ASTROS 10, PADRES 3: At Houston, Roy Oswalt won consecutive starts for the first time since August, and Miguel Tejada and Lance Berkman drove in three runs each to lead Houston over San Diego. Oswalt (2-3) allowed three runs and six hits in seven innings as the Astros won their second straight following a three-game losing streak. Oswalt was 6-0 over eight starts from July 20 to Sept. 3, then went 0-4 in six starts before winning at Philadelphia on April 16. San Diego's Jim Edmonds hit a solo home run in the second, his first homer since Sept. 14.

DODGERS 9, REDS 3: At Cincinnati, Nomar Garciaparra hit his first home run since Sept. 14 and drove in three runs, Brad Penny stayed perfect at Great American Ball Park and Los Angeles beat Cincinnati. Rafael Furcal also homered, and James Loney added three RBI for the Dodgers, who equalled their season high with 15 hits after scoring one run in each of their three losses at Atlanta last weekend. Andruw Jones was dropped to eighth in the starting batting order for the first time since Aug. 22, 1998. He went 0-for-4.

MARLINS 10, PIRATES 4: At Pittsburgh, Hanley Ramirez, Josh Willingham and Dan Uggla homered and Mark Hendrickson, normally one of the majors' worst hitters, had two hits while pitching eight innings in Florida's win over slumping Pittsburgh. Ramirez hit a two-run homer during a four-run second inning against Matt Morris (0-3), giving him three homers in two games. Willingham added a two-run drive as Florida scored three more times in the third to make it 7-2. The Pirates lost their sixth in a row and gave up double-digit runs for the third consecutive game. They hadn't done that since Montreal scored a combined 35 runs against them during three games in June 1994.

CARDINALS 4, BREWERS 3: At Milwaukee, Skip Schumaker doubled in the go-ahead run in the ninth and St. Louis overcame a fielding blunder in the eighth to beat Milwaukee in the opener of a two-game set. Brian Barton, who pinch hit for reliever Ryan Franklin, doubled off embattled Brewers reliever Derrick Turnbow (0-1) to start the inning and Schumaker drove him in with a double to the wall after a sacrifice bunt.

DIAMONDBACKS 4, GIANTS 2: At Phoenix, Eric Byrnes hit the go-ahead, two-run homer, and Micah Owings became the season's third four-game winner when Arizona beat San Francisco. Mark Reynolds and Orlando Hudson hit solo home runs as the Diamondbacks improved their major league-best record to 14-5. Arizona is 13-3 against NL West foes.

DODGERS 9, REDS 3: At Cincinnati, Nomar Garciaparra hit his first home run since Sept. 14 and drove in three runs, Brad Penny stayed perfect at Great American Ball Park and Los Angeles beat Cincinnati. Rafael Furcal also homered, and James Loney added three RBI for the Dodgers.

American League

RED SOX 8, RANGERS 3: At Boston, Clay Buchholz pitched six shutout innings, David Ortiz drove in three runs with a pair of doubles. Julio Lugo went 4-for-4 with a walk and an RBI as the Red Sox scored at least five runs for the ninth straight game. Boston has won nine of 10 overall. The annual game on Patriots Day — a holiday commemorating Paul Revere's ride and the battles of Lexington and Concord in 1775 — began at 11:06 a.m.

TIGERS 5, BLUE JAYS 1: At Toronto, rookie Armando Galarraga won his second straight start, Edgar Renteria homered and the Detroit Tigers beat the Toronto Blue Jays. Ivan Rodriguez had four hits and Renteria scored twice for the Tigers. Galarraga (2-0) has won back-to-back starts since being called up from Triple-A Toledo last week to replace Dontrelle Willis, sidelined by a hyperextended knee. The 26-year-old Galarraga lowered his ERA to 1.50. He has not allowed a hit to a right-hander in 21 at-bats since joining the Tigers.