It was a 1-1 game with one out in the bottom of the fourth when Scott Rolen took lefty Joe Paterson's first pitch deep to right field for a three-run home run. It was Rolen's first homer during a red-hot spring in which he's batting .444.
Before Paterson took over, D-backs starter Tyler Skaggs, the team's third-ranked prospect, struck out five without a walk over three innings. Skaggs gave up one run on two hits. After a Brandon Phillips leadoff double in the first inning, he scored on a two-out single by Ryan Ludwick.
"I threw everything pretty well today," Skaggs said. "I felt like my changeup was really good today and curveball was probably the best it's been so far. The fastball hit its spots sometimes, but I still need to work on some command issues. But other than that, I felt really good today."
Reds starter Mike Leake had a quality afternoon with one run and two hits allowed over four innings with one walk and one strikeout.
Arizona got on the scoreboard in the top of the third when Eaton hit a two-out double to right-center field that scored Skaggs.
Cincinnati took a 5-1 lead in the fifth inning. After Paul Janish's one-out double off the left-field wall put runners on second and third base, a Jason Lane wild pitch to Joey Votto scored Phillips from third base.
The Reds scored a pair of runs in the ninth, including one on Todd Frazier's fourth home run of the spring.
"It was a day of the elements," Reds manager Dusty Baker said. "We were very fortunate we got it in really. I didn't think we had a chance."
Up next for D-backs: After a split-squad afternoon on Sunday, the D-backs head to Phoenix Municipal Stadium on Monday to take on the A's. Right-hander Josh Collmenter (0-1, 13.50) takes the hill for Arizona against Oakland's Jarrod Parker (1-1, 2.45). Collmenter surrendered three hits and three runs (one homer) in two innings in his last outing, against the Rockies.
Up next for Reds: Homer Bailey will be back to make his fourth start of the spring on Monday as the Reds face the White Sox at 4:05 p.m. ET at Camelback Ranch in Glendale. Bailey is coming off of a six-run, six-hit outing over 2 1/3 innings on March 14 vs. the Dodgers. Nick Masset, who has not pitched since March 7 because of a shoulder injury, is expected to return and work one inning out of the bullpen.