PHOENIX -- Justin Upton put on quite a show in his return to Phoenix.
Upton snapped a 14-game homerless drought and had four hits to help the Braves snap a three-game losing streak.
"It was the Justin show," Braves third baseman Chris Johnson said with a smile.
Upton, the first overall pick by Arizona in the 2005 amateur draft, was playing his first game at Chase Field since the offseason trade that sent him and Johnson to Atlanta in a seven-player deal.
Upton received a mixed reaction throughout the night, with the cheers barely outweighing the boos when he stepped in or took the field for the first time.
"It was mixed, and that was what I expected," Upton said. "It is what it is. I tried to have fun with it. This time the fans were yelling at me instead of cheering me, but it was good."
Upton followed his brother B.J., who was hit on the left shoulder by Wade Miley (3-2) to lead off the sixth, and powered a changeup onto the porch above the center-field fence for his 13th home run and first since April 27 at Detroit. Despite the drought, he still leads the majors in homers.
Johnson hit a two-run homer to cap Atlanta's three-run fifth and Brian McCann also homered for the Braves.
"It usually works out like this," said Braves manager Fredi Gonzalez. "When guys are traded, they have a good night."
Mike Minor (5-2) allowed one run on eight hits over 6 2/3 innings.
"It wasn't really about me," Minor said. "It was about everybody else, because I didn't have my best stuff tonight."
Paul Goldschmidt hit his 10th home run for the Diamondbacks, who have lost three straight.
Miley started strong but faded in the fifth and never recorded an out in the sixth.
After Justin Upton's home run made it 5-1, Freddie Freeman doubled, Evan Gattis walked and both runners advanced on a wild pitch. McCann singled to right, scoring Freeman to make it 6-1. Johnson added a one-out double to left off reliever Josh Collmenter, driving in Gattis for a 7-1 lead.
"We've been scuffling to score some runs on this road trip, so to go and score some runs feels nice," Upton said.
Miley allowed seven runs on six hits over five innings. He walked two, hit a batter, struck out one and threw two wild pitches. Miley threw only 47 pitches in the first four innings but another 39 to the final 11 batters he faced.
"I was sort of messing up," Miley said. "Early in the game I was hitting spots and pitching down in the zone, but then, just like that, I couldn't get it down anymore. I left pitches up and they capitalized."
The seven runs allowed were the second-most of Miley's career.
"He didn't make the pitches he needed to make," said Arizona manager Kirk Gibson. "This team, you don't want to give them anything because you know they are going to hit a home run. That is what they do well. We put guys on and they hit home runs."
Goldschmidt gave the Diamondbacks a 1-0 lead in the first with a home run deep into the left-field bleachers.
Arizona had other scoring chances against Minor, but Prado was thrown out at the plate in the fourth by B.J. Upton on a Gerardo Parra single and Cody Ross was tagged out at home in the sixth on a double to left by Prado.
Diamondbacks Didi Gregorius ended the bottom of the fifth when he was caught attempting to steal second base.
Atlanta is 4-1 in its past five games at Chase Field. ... B.J. Upton was pulled for a pinch hitter in the top of the seventh with a left shoulder contusion and is day-to-day. ... Braves 2B Dan Uggla doubled in the eighth to end an 0-for-14 streak. ... Justin Upton has his 68 of his 121 career home runs at Chase Field. ... According to MLB.com, entering the game Miley had held hitters to a .178 batting average on his first 45 pitches, but batters had hit .353 from his 46th pitch on. ... Goldschmidt is the ninth Diamondbacks player to hit 10 home runs in fewer than 40 games and the first since Kelly Johnson (11 homers) and Mark Reynolds (10) each did so in 2010. ... Johnson snapped an 0-for-18 skid with a single in the third, the Braves' first hit. ... Atlanta OF Jason Heyward went 1-for-2 with an RBI double in the Triple-A Gwinnett Braves' 3-2 win over Scranton/Wilkes-Barre on Monday. Heyward was placed on the 15-day disabled list April 23 after an appendectomy April 22.