NEW YORK (AP) - Willie Harris made a game-ending diving catch to yet again thwart a Mets rally, well-traveled Willy Taveras drove in a career-high four runs and the Washington Nationals beat New York 4-3 on a blustery Saturday.
Taveras singled and tripled in his first start for the Nationals, who signed him to a minor league contract in February after Oakland let him go.
John Lannan (1-1) teetered on the brink of disaster for the second straight start, giving up three runs in five erratic innings, before Tyler Clippard set down nine of the 10 batters he faced in relief.
Matt Capps made the ninth inning an adventure, giving up a leadoff single to Jose Reyes and eventually loading the bases on a pair of walks. Rod Barajas lined a hard shot to left, but Willie Harris came on at a dead run and made a diving grab to end the game.
It was Capps' second save of the season.
Cubs 4, Reds 3
CINCINNATI (AP) - Carlos Zambrano recovered from his horrific opening day start by pitching seven solid innings, and pinch-hitter Jeff Baker hit a tiebreaking homer in the eighth inning for the Chicago Cubs.
Zambrano (1-1) managed only four outs during the Cubs' 16-5 opening-day drubbing in Atlanta. He held the Reds to six hits, including Brandon Phillips' homer, and struck out nine.
Baker hit his solo shot off left-hander Arthur Rhodes (0-1), Chicago's third homer of the game. Kosuke Fukudome and Alfonso Soriano also connected off Aaron Harang.
Cardinals 7, Brewers 1
MILWAUKEE (AP) - Yadier Molina hit a three-run homer and Yovani Gallardo struggled in his first outing since signing a big contract extension with the Brewers, giving up six runs in five innings in the St. Louis Cardinals' Saturday.
Jaime Garcia (1-0) was sharp in his debut as the Cardinals' No. 5 starter, giving up a run and four hits in six innings. Colby Rasmus homered and Albert Pujols had a two-run single for the Cardinals.
Brewers sluggers Ryan Braun and Prince Fielder went a combined 0-for-8, including three strikeouts by Fielder.
Phillies 9, Astros 6
HOUSTON (AP) - Ryan Howard, Shane Victorino and Jayson Werth drove in three runs apiece, and Philadelphia sent winless Houston to its worst start in 27 years.
The Phillies finished with 11 hits and have reached double digits in their first five games for the first time since 1926. Philadelphia leads the majors with 41 runs.
Jamie Moyer (1-0), baseball's oldest player at 47, became the sixth-oldest pitcher to appear in a game and the eighth to start one in four decades. He allowed five runs and nine hits in six innings.
Jason Michaels and Hunter Pence homered off Moyer for the Astros, who are 0-5 for the first time since the 1983 team lost its first nine games.
Moyer left with the Phillies trailing 5-4, but they regained the lead in the seventh on Howard's two-run shot off Brandon Lyon (0-1).
Marlins 7, Dodgers 6
MIAMI (AP) - Jorge Cantu's sacrifice fly capped Florida's three-run rally in the ninth inning against Los Angeles.
Pinch-hitter Ronny Paulino's two-run double tied the game.
With the Marlins trailing 6-4, Gaby Sanchez singled to start the ninth. George Sherrill (0-1) came on and hit pinch-hitter Wes Helms with a 2-2 pitch. Chris Coghlan walked on a 3-2 pitch to load the bases, and Paulino doubled.
Cantu hit a fly to medium center, and Matt Kemp's throw home was wide of the plate as Coghlan slid home headfirst.
Dodgers manager Joe Torre decided against using closer Jonathan Broxton because he had pitched the previous two days.
Jose Veras (1-0) was the winner despite giving up a homer to Kemp in the only inning he worked.
Pirates 6, Diamondbacks 3
PHOENIX (AP) - Akinori Iwamura and Jeff Clement homered off Arizona ace Dan Haren, and Pittsburgh lefty Zach Duke limited the Diamondbacks to four hits in seven innings.
Duke (2-0) threw six scoreless innings before Mark Reynolds hit a two-run homer some 476 feet onto the patio in front of a restaurant in left field, the seventh-longest home run at Chase Field.
Duke, whose start was moved up a day so he could face Haren, struck out two and walked two but baffled Arizona's batters into groundouts and popouts.
Octavio Dotel pitched a scoreless ninth for his first save.
Haren (1-1) was off his game from the start, giving up five runs in the first four innings.
Diamondbacks catcher Miguel Montero left in the second inning after injuring his right knee running out a grounder.
Padres 5, Rockies 4, 14 innings
DENVER (AP) - Adrian Gonzalez hit an RBI double in the 14th inning, sending San Diego to a victory over Colorado in the first extra-inning game for both teams this season.
David Eckstein, hitless in six previous at-bats, began the 14th with bloop single off Manuel Corpas (0-1). Gonzalez followed with a double that rolled to the right-field wall, allowing Eckstein to score.
Tim Stauffer (1-0) pitched three scoreless innings for the win in a game that lasted 4 hours, 27 minutes.
Heath Bell allowed a two-out double in the 14th to Brad Hawpe, who hit two home runs earlier. Bell then intentionally walked Ian Stewart before striking out Chris Iannetta for his second save.
Iannetta homered in the third.