PHOENIX -- San Diego's offense jumped out of character Sunday, but manager Bud Black was hardly complaining. The Padres scored five runs on two swings of the bat to avoid a three-game sweep in Arizona.
First baseman Yasmani Grandal hit a three-run home run in the fifth inning and pinch-hitter Will Venable added a two-run homer in the eighth in a 7-4 victory over the Arizona Diamondbacks at Chase Field on Sunday.
"Power is something that can really come into play, and we have not shown through the home run a lot of power," Black said.
"But we have guys capable. It's in there. We have to get it out of them."
The Padres (60-69) have 91 homers this season, ahead of only Kansas City and St. Louis. They are last in the majors in runs, batting average and OPS.
Grandal hit a high fastball out of the strike zone into the right-field seats with two on to give right-hander Ian Kennedy (10-11) a 5-0 cushion.
"Three-run homers are beautiful," Black said.
Right-hander Chase Anderson (7-6) walked three batters in the fifth inning, and one was erased on a double play before Grandal came to the plate.
"When guys are like that, you have to jump on a fastball," Grandal said.
"It wasn't a strike. It was up. That's what I was kind of going for, to get something up in the zone to see if I could drive it. Even if it is up, you can get to it. Unless you have Chapman (Cincinnati closer Aroldis) throwing."
Grandal, who also had a sacrifice fly and drove in a career-high four runs, has a career-high 11 homers this season. Venable, who had 22 homers last season, hit his sixth.
"Five of their seven runs came on home runs and walks today," Arizona manager Kirk Gibson said.
"In this ball park that is not what you want to do. You got to keep the ball out of the air and he didn't make good pitches and they hit them out of the park."
Venable's homer gave the Padres a 7-3 lead and all but iced Black's 600th career victory, second to Bruce Bochy in franchise history.
"It's a round number. I like 601 better," Black said.
Catcher Miguel Montero had a two-run single in the fifth inning and pinch-hitter Cliff Pennington homered in the eighth for Arizona (55-76), which had a two-game winning streak broken.
Second baseman Aaron Hill and right fielder David Peralta had two hits for the Diamondbacks, and center fielder Ender Inciarte doubled in a run in the sixth inning.
Shortstop Alexi Amarista had two hits and left fielder Seth Smith had an RBI groundout in the first inning for the Padres, who had lost five of six.
Right-hander Joaquin Benoit pitched a 1-2-3 ninth inning for his eighth save.
Kennedy is 26-13 with a 3.71 ERA in 68 starts at Chase Field. He was 21-4 for the D-backs in 2011, when he finished fourth in the NL Cy Young Award voting.
"The offense came through early on and let me pitch with a lead," Kennedy said. "The fifth inning, I made a couple of mistakes. But we won the game. That's what’s important.”
As far as facing his former team, he added: "I've been a Padre for over a year now. It kind of goes away, that whole ex-team thing."
San Diego second baseman Yangervis Solarte and right fielder Rymer Liriano singled to open the game and moved up on a passed ball by Montero before Smith's groundout and Grandal's sacrifice fly made it 2-0.
Kennedy and Smith walked before Grandal's two-out homer in the fifth. Grandal had been 4-for-22 in the first nine games of the Padres' 10-game road trip that ended Sunday.
"I kind of lost the feel in that fifth inning," Anderson said. "I can't really tell you why."
NOTES: San Diego 2B Jedd Gyorko (hamstring) again was held out of the starting lineup Sunday. Gyorko did not start but pinch-hit Saturday. ... Arizona 2B Aaron Hill will be used some at third base the final five weeks of the season and SS Chris Owings also will play some at second base, manager Kirk Gibson said. Hill played 35 games at third in 2005, his rookie season with Toronto, but has not played there since. ... By winning the first two games of the San Diego series, Arizona has won all four series against the Padres this season. The two meet again in San Diego from Sept. 1-4 and in Arizona from Sept. 12-14.