CHICAGO — James Shields was shaky again. Avisail Garcia and Melky Cabrera each committed a costly error, and Todd Frazier had another rough day at the plate.

And none of it mattered to the Chicago White Sox. Not when Adam Eaton's bouncer made its way into the outfield late Monday night.

Eaton singled home the winning run in the 12th inning for his fourth hit of the game, and the White Sox rallied from seven runs down for a wild 10-9 victory over the Detroit Tigers.

"To claw back the way we did and especially in the ninth, to tie it up, it's a huge win for the team," Eaton said. "I think we can hopefully hop on this wave and ride it a little bit."

J.B. Shuck led off the 12th with a double down the first-base line and advanced to third on Tim Anderson's sacrifice. With the infield playing in, Eaton then bounced a grounder up the middle against Anibal Sanchez (3-7), lifting Chicago to an unlikely victory.

Zach Duke (1-0) pitched a scoreless inning for the win. The White Sox had lost seven of nine and 14 of 18.

"They did a good job grinding out some at-bats today and it showed up," said bench coach Rick Renteria, who took over after manager Robin Ventura was ejected in the seventh.

Jose Abreu hit a two-run homer for Chicago, and Dioner Navarro connected for a solo shot. Eaton scored two runs while batting in the second slot for the first time in his three seasons with the White Sox.

The White Sox trailed 7-0 in the third, hurt by another rough outing for Shields. They faced a 9-7 deficit in the ninth before they got to Francisco Rodriguez for two runs with two outs, snapping a string of 19 straight successful save opportunities for the veteran closer.

"The best closers in the game have an off night. He's one of the best and he had an off night," Tigers manager Brad Ausmus said. "First blown save since opening day, so I'm not worried about K-Rod at all."

After Brett Lawrie and Garcia delivered consecutive RBI singles, Shuck flied out to send the game to extra innings.

Ian Kinsler homered for the third straight game for Detroit, which had won seven of nine. J.D. Martinez had three hits while subbing for designated hitter Victor Martinez, who was sidelined by right knee irritation.

"What are you going to do? There's another team playing over there and they played well," Kinsler said.

Kinsler's 34th career leadoff homer on Shields' second pitch began another disappointing performance for the right-hander in his second start since he was acquired in a June 4 trade with San Diego.

Shields finished his outing with his first two scoreless innings for Chicago, but allowed seven runs, six earned, and nine hits in five innings. Shields, who lasted only two-plus innings in his White Sox debut Wednesday, is 1-4 with a 7.90 ERA in his last seven starts.

"Obviously, it's not the start that I want, but coming out on top is good," he said.

Ventura was thrown out by umpire Mark Carlson after a close pitch to Miguel Cabrera was called a ball. Ventura then ran out of the dugout for an animated discussion with Carlson before eventually leaving the field.

VICTOR, VICTOR

Victor Martinez had an MRI, and Ausmus said it showed "no major structural issues." Martinez pinch-hit in the 11th and walked before he was replaced by pinch-runner Andrew Romine.

The 37-year-old Martinez said he isn't concerned and joked he is just getting old.

MAKING MOVES

Right-handed relievers Tyler Danish of the White Sox and Bobby Parnell of the Tigers were sent down to the minors after the game. Detroit recalled right-hander Buck Farmer from Triple-A Toledo, and Chicago said it would make a corresponding move on Tuesday.

TRAINER'S ROOM

Tigers: RHP Warwick Saupold, placed on the 15-day disabled list June 1 with a strained groin, has thrown from 120 feet but is yet to throw off a mound.

White Sox: LHP Carlos Rodon said he felt fine a day after he pitched six innings in a 3-1 loss to Kansas City. Rodon had been pushed back a couple of days due to a sore neck.

UP NEXT

Tigers RHP Jordan Zimmermann (8-3, 3.30 ERA) tries to get back on track when he faces White Sox RHP Miguel Gonzalez (1-1, 3.57) on Tuesday night. Zimmermann allowed seven runs and eight hits in a season-low 4 2/3 innings during a 7-2 loss to Toronto on Wednesday. "Rarely do I have two bad games in a row," Zimmermann said. "Not saying it's not going to happen, but hopefully I come out and have a good game." Gonzalez pitched six crisp innings in a 3-1 victory over Washington in his previous start on Thursday night.

___

Jay Cohen can be reached at http://www.twitter.com/jcohenap