CINCINNATI -- Just because Trevor Hoffman blows a save doesn't mean the San Diego Padres have to lose the game.
Khalil Greene homered and drove in three runs, including the go-ahead run in the 11th, and San Diego overcame a rare Hoffman failure with a 12-7 win over the Cincinnati Reds on Friday.
David Weathers (2-4), Cincinnati's sixth relief pitcher, walked the bases loaded with one out to set up Greene's sacrifice fly to left field, which snapped a 7-7 tie. Josh Bard followed with a two-run triple down the right field line, and Kevin Kouzmanoff greeted reliever Victor Santos with a first-pitch two-run homer to left.
Weathers left the clubhouse before the media was allowed in, but Reds manager Pete Mackanin said the closer -- who had converted 22 of 27 save opportunities -- can't be expected to deliver every night.
"He doesn't do that," Mackanin said about Weathers' control problems. "It's just one of those things. It's totally unexpected. That's just the way it goes. You can't expect him to be as good as he's been all year."
Brian Giles and Adrian Gonzalez also homered for the Padres, who'd lost three of their previous four games.
Rookie Kevin Cameron (1-0), San Diego's sixth reliever, pitched the final two innings for his first career win.
"It's nice to win any game, but a game like this is a really good win," Padres manager Bud Black said. "You can gain momentum. This was truly a team win."
Hoffman had converted 25 consecutive save opportunities before Brandon Phillips led off the ninth with a double and Hatteberg followed one out later with a double off the left field wall to tie the game at 7. Hoffman came back to get two popups and end the inning, but the blown save was Hoffman's first since April 27 against Los Angeles.
"Those were pretty hard-fought at bats," Greene said about Phillips and Hatteberg. "One thing he's always been able to do is come back and maintain."
Greene hit his 19th homer to lead off the sixth to extend San Diego's lead to 6-4. After the Reds tied the game, Greene's bloop single to right-center field in the seventh put the Padres ahead, 7-6.
"That's the way the game goes," Greene said. "You play it all the way out. Lately, we haven't had a lot of offense, but it seems like where it has come in, it's come in bunches."
The Reds pieced together a two-run rally against Cla Meredith in the sixth on a run-scoring groundout by pinch-hitter Mark Bellhorn, and a weak infield grounder that Norris Hopper beat out for a single when Meredith slipped and fell while catching the ball.
The Reds capitalized on center fielder Mike Cameron's mental error to take a 2-0 lead against Wilfredo Ledezma in the first. Phillips doubled and stole third base with one out, and Ken Griffey Jr. walked. Phillips scored on Jeff Conine's sacrifice to Cameron, whose throw home sailed far over the cutoff man, allowing Griffey to move to second base and score on Adam Dunn's single to center.
They took advantage of another miscue to add a run in the second. Alex Gonzalez led off with a double and, one out later, moved to third on a passed ball, leaving him in position to score on Hopper's two-out bunt single.
Giles cut Cincinnati's lead to 3-2 with a two-run homer in the third, his third of the season and first in 79 at-bats since July 14. Griffey responded by leading off the third with a 403-foot homer into the right-center field seats, his 27th homer of the season.
Griffey's 590th home run puts him 14 behind Sammy Sosa on the career home run list.
Adrian Gonzalez hit his 19th homer of the season in the fourth inning with two runners on to give San Diego a 5-4 lead. He went 3-for-4 with three RBI.
San Diego left-hander Wilfredo Ledezma's first start since last Sept. 29, for Detroit against Kansas City, lasted 3 1/3 innings. The left-hander gave up five hits and four runs, three earned, with three walks and three strikeouts.
Cincinnati right-hander Matt Belisle allowed six hits and five runs with two walks and four strikeouts in five innings.
The Padres placed RHP Doug Brocail on the bereavement list and OF Scott Hairston on the 15-day disabled list Friday, and recalled LHP Joe Thatcher and purchased the contract of RHP Jack Cassel from Triple-A Portland. ... Hopper extended his career-high hitting streak to eight games. ... Ledezma is the 375th different pitcher to give up a homer to Griffey. ... Cassel made his major league debut.