PHOENIX -- After entering in a double switch, Ryan Schimpf gave the San Diego Padres that one big swing they've been waiting for.
Schimpf hit a go-ahead, three-run homer with one out in the top of the ninth inning to rally the Padres past the Arizona Diamondbacks 8-5 on Wednesday night.
Schimpf began the day batting .102 with a team-high 25 strikeouts, but got in the game with San Diego down 5-3 in the sixth. In his second at-bat of the night, he took closer Fernando Rodney (1-1) into the right-field seats to give the Padres a 6-5 lead.
"Just try not to do too much, really," Schimpf said. "Just trying to get ready for something to hit, trying to square something up, get the run in, keep the inning going. Very happy to do something and get the win."
Yangervis Solarte added a two-run double later in the inning, and San Diego ended a four-game losing streak.
Padres manager Andy Green said his team was able to take advantage of Rodney leaving fastballs out over the plate.
"That was great for Schimpf. He's fought so hard. It's been such a struggle for him offensively so far this season," Green said. "But it was a matter of time. I keep saying it's one swing. One swing to get him going."
Hunter Renfroe and Erick Aybar also homered for the Padres. Ryan Buchter (1-0) won in relief and Brandon Maurer earned his fourth save.
Rodney was charged with five runs and six hits. He said he threw Schimpf a fastball that cost him.
"It was a tough time tonight. Sometimes it's difficult to get three outs. They got me tonight," Rodney said.
The announced crowd of 12,215 was the smallest for a regular-season Diamondbacks game at Chase Field. The previous low was 14,110 last July 5, also against the Padres.
Paul Goldschmidt had three hits and three RBIs for Arizona, tying a club record by reaching base in nine consecutive plate appearances Tuesday and Wednesday.
Diamondbacks right-hander Zack Godley, called up from Triple-A Reno earlier in the day for his first major league start since last season, allowed two runs and four hits in five innings. He struck out six and walked three.
After the game, Godley was sent back down to the minors.
David Peralta reached base four times. He has scored 10 runs in his last seven games and has 10 multi-hit games this season.
Padres starter Trevor Cahill struck out nine in 5 2/3 innings but allowed five runs on nine hits and walked four. He helped himself with an RBI double.
The Diamondbacks scored once in the first and three times in the third for a 4-0 lead. By then, Goldschmidt had set a franchise record with multiple RBIs in five consecutive games. He became the third NL player since the start of the 2014 season to do it.
Cahill's two-out RBI double in the fourth trimmed the deficit to 4-2. It came two batters after Aybar's second home run of the season.
Renfroe homered in the sixth off reliever Archie Bradley, only the second run he's allowed in 14 1/3 innings. Bradley struck out five in three innings, but Rodney was tagged for his first blown save in seven chances this year.
"Definitely a frustrating ending to a pretty well-pitched night," Diamondbacks manager Torey Lovullo said.
LET'S GET TWO
Padres outfielder Jabari Blash grounded into a messy 1-2-3 double play to end the second. With the bases loaded and one out, Godley fielded Blash's comebacker and soft-tossed a one-hop throw home that catcher Jeff Mathis caught for a forceout. Mathis' throw to first base drilled Blash in the back and bounced away, but Blash was called out for interference.
YATES JOINS PADRES
San Diego claimed RHP Kirby Yates off waivers from the Los Angeles Angels and added him to the bullpen, with reliever Kevin Quackenbush sent to Triple-A El Paso. Quackenbush began the season in the minors and has been called up twice and sent down twice this month. Green said Quackenbush will be back with the Padres again at some point.
Padres: RHP Jarred Cosart (hamstring) remains on the 10-day disabled list, but Green said his rehab is going well after Cosart threw a bullpen session Wednesday.
Diamondbacks: RHP Shelby Miller has right elbow inflammation and plans to consult Dr. James Andrews for a third opinion on his MRI results and a plan going forward. … 2B Brandon Drury collided at first base with Cahill, who was running to cover the bag on a grounder. Drury finished the inning but came out in a double switch before the sixth. He is day to day with a jammed right knee. "He flexed his knee in a way that scared him. I didn't like the look on his face," Lovullo said.
Padres: RHP Jered Weaver (0-1) makes his fifth start of the season Thursday night at Arizona, fourth on the road.
Diamondbacks: RHP Taijuan Walker (2-1) faces the Padres in the finale of the four-game series.