NEW YORK (AP) -- Eliezer Alfonzo had a memorable major league debut -- no matter how his name was spelled on the back of his jersey.
Alfonzo delivered a go-ahead homer for his first major-league hit and San Francisco beat the New York Mets 6-4 in the rain-delayed first game of a doubleheader.
"That's awesome. That's something that we needed," winning pitcher Matt Cain said. "A lot of thanks to him."
Barry Bonds sparked the key rally and hit an RBI single during his first game in the Big Apple this season. The hard-throwing Cain won his third straight start since being skipped in the rotation, and ex-Met Armando Benitez closed it out.
The start of the opener was delayed by showers for 2 hours, 36 minutes. It was raining again by the early innings, but the teams played on and the dark skies finally cleared.
"Sitting around waiting is always hard," Cain said. "You just try to stay as focused as you can."
With the Giants trailing 4-2, Bonds singled leading off the sixth and scored on Pedro Feliz's two-out triple to right-center.
Alfonzo then drove a 1-0 pitch from Hernandez (3-5) over the left-field fence for his first career hit and a 5-4 lead. Not a bad memory to take from one's big-league debut -- even if his name was misspelled as "Alfonso" on the back of his jersey.
"Alfonzo can hit, we know that," Alou said.
Whatever his teammates think his name is, the 27-year-old catcher was recalled Friday from Double-A Connecticut because four-time Gold Glove winner Mike Matheny was put on the disabled list with a concussion.
Alfonzo's homer made a winner of the 21-year-old Cain (4-5), who yielded four runs -- three earned -- and six hits in five innings for his second win over the Mets this year. He beat Glavine 6-2 on April 24 in San Francisco for his first win this season.
Kevin Correia, Steve Kline and Jeremy Accardo combined for three innings of perfect relief to set up Benitez for his fourth save. After two walks, he retired pinch-hitter Julio Franco and Jose Reyes to end it.
"I came out of the game earlier than I wanted to, just because of pitch count," Cain said. "They did a great job behind me."
Bonds had a two-out RBI single in the ninth and finished 2-for-3 with a pair of walks. Playing for the first time since Monday, he was booed all afternoon. Several fans held up critical signs, but the diminished crowd was tempered by the wet weather.
"It was less than I expected," Alou said. "People in this part of the world, they like home runs."
Bonds didn't start the second game. Neither did Alfonzo -- Todd Greene was behind the plate.
Acquired from Arizona on May 24 in a trade for reliever Jorge Julio, Hernandez allowed five runs and eight hits over six innings in his second start with his new team.
"He couldn't get us out of that inning," Mets manager Willie Randolph said. "He had some good stuff and it was kind of uncharacteristic of him. Obviously, a couple of real bad pitches in that inning."
Randy Winn led off the game with a double and scored on Steve Finley's one-out double. Bonds walked but was doubled off first on Ray Durham's lineout to center fielder Endy Chavez, delighting the crowd.
Winn stole second with two outs in the third, and Finley's single made it 2-0.
Reyes hit his seventh triple in the bottom half and scored on Chavez's groundout. New York tied it on consecutive doubles by Wright and Cliff Floyd to start the fourth, and Floyd later scored on Cain's wild pitch for a 3-2 lead.
An error by Durham at second base led to Wright's two-out RBI single in the fifth, but El Duque coughed up the lead.
"I was feeling good. I made maybe three mistakes in the sixth inning. It was bad for me and for my team," Hernandez said.
Mets first baseman Carlos Delgado went 0-for-4, leaving him with three hits and one RBI in his last 40 at-bats. ... Mets broadcaster Gary Cohen left the ballpark in an ambulance before the first game and
was taken to a hospital. The team was awaiting word on his condition. ... It was the first doubleheader of the season for both teams. The Mets and Giants split a twinbill at Shea Stadium on June 5 last year. ... Mets center fielder Carlos Beltran (bruised right knee) walked in the ninth as a pinch hitter. He didn't start the second game,
either. ... Correia struck out all three batters in the sixth.