Don Kelly entered the game as a pinch-hitter and batted twice before the inning was over.

It was an unusual experience for the Detroit utilityman — and a sign that the Tigers' offense is beginning to live up to its potential.

Miguel Cabrera hit a go-ahead single and the Tigers scored seven runs with two outs in the eighth to beat the Arizona Diamondbacks 8-3 on Sunday. Kelly started the rally with a one-out single with the Tigers down a run. By the time he came to the plate again, Detroit led 7-2.

"It doesn't happen too often, but we like it when it does," Kelly said.

Detroit was playing in front of its third home sellout of the season — the team retired former manager Sparky Anderson's No. 11 before the game. Jhonny Peralta gave the Tigers a 1-0 lead in the second with his 12th homer, but the Tigers trailed 2-1 until their big eighth inning.

Kelly singled off reliever Aaron Heilman (4-1). After Austin Jackson struck out, Casper Wells drew a walk. David Hernandez then came on and didn't retire any of the four batters he faced.

He walked Magglio Ordonez on four pitches to load the bases for the always-dangerous Cabrera, who appeared to get jammed but managed to line a two-run single to left. Hernandez then gave up RBI singles to Victor Martinez and Peralta.

"We never quit, that's for sure," Martinez said.

And they didn't stop. Brandon Inge hit a two-run single off Bryan Shaw to make it 7-2, and Kelly — batting again — reached on an error, with another run scoring.

Al Alburquerque (5-1) pitched 1 1-3 innings of scoreless relief for Detroit.

"We played a tough game, but they've got a great offense and they got everything rolling all at once," Arizona outfielder Chris Young said. "That's why you have to get all 27 outs."

The Tigers are averaging 5.1 runs a game in June. Cabrera, Peralta and Martinez have hit well all season, and Ordonez is showing signs of turning around a poor start.

"We hit some of them good, some of them not so good — but wherever we hit them, they found a gap, found a hole," manager Jim Leyland said. "That was the big thing. Miguel had a big two-out hit, that's golden. That's what he's good at. The other guys kind of picked up on it and we added some insurance and had a good win after what looked like it could be a potentially tough day."

Arizona wasted a fine start by Joe Saunders, who allowed a run and four hits in seven innings. He struck out eight and walked one and has thrown at least six innings in 11 consecutive starts.

Arizona scored twice in the seventh to take a 2-1 lead. Young led off with a double and Miguel Montero followed with a tying single. Detroit starter Brad Penny got the next two outs on popups, but Gerardo Parra hit a single and Ryan Roberts followed with another to put the Diamondbacks ahead.

Roberts was in the starting lineup only because Melvin Mora was a late scratch with a bad back.

Penny went 6 2-3 innings, allowing two runs and eight hits with a walk and two strikeouts.

"Thank God they took Saunders out," Penny said. "He threw a great game. He was making pitches with everything — pitching in and out, up and down and locating his off-speed stuff."

Alburquerque, who has been outstanding all season, relieved Penny with two on in the seventh. He allowed a walk to load the bases, then struck out Stephen Drew to end the threat.

Alburquerque gave up two hits in the eighth but worked out of that jam, too. He lowered his ERA to 1.95. He has struck out 46 hitters in 27 2-3 innings.

NOTES: Montero and Roberts had three hits each for Arizona, and Peralta had three for the Tigers. ... Detroit 2B Carlos Guillen (left knee) is scheduled to start a rehabilitation assignment with Class-A Lakeland on Monday. ... Jackson struck out twice in the eighth inning and four times in the game.