MINNEAPOLIS — Eddie Rosario ripped a line drive toward left field that seemed destined to fall in, which would have made him the first Minnesota Twins player to hit for the cycle since 2009.
Out of nowhere, Seattle shortstop Brad Miller leaped to stab it out of the air. It was the only thing that went wrong for Rosario all night.
He had a homer, a triple, a double and drove in three runs to help the Twins snap a four-game skid with a 9-5 victory over the Mariners on Thursday night.
Aaron Hicks and Brian Dozier also homered for the Twins, who had lost 10 of their previous 12 games. Phil Hughes (10-6) gave up five runs on 10 hits and struck out five in five innings and Joe Mauer extended his hitting streak to 11 games.
"I thought I had it," Rosario said with a smile. "But he made a good play. I was angry."
Austin Jackson and Seth Smith hit two-run homers for the Mariners, who traded outfielder Dustin Ackley to the New York Yankees before the game. J.A. Happ (4-6) gave up seven runs — six earned — on nine hits in 3 1/3 innings.
Glen Perkins pitched a scoreless ninth after a couple of shaky outings and Rosario tipped his cap to Miller after the highlight reel snare in the eighth inning.
"I didn't have any more glove," Miller said. "If the ball was any higher he might've tipped off and got it. To see his reaction, he probably thought he got one, but it was kind of cool. You fight to the end. That's baseball."
Both starters were hit hard early and often, with Smith opening things with a two-run homer off of Hughes in the first inning.
The Twins came right back with five off Happ in the bottom half of the inning, sending nine men to the plate and getting a leadoff homer from Dozier and a three-run shot from Rosario.
Hicks went deep in the second inning for Minnesota, Jackson hit a two-run homer in the fourth for the Mariners and Rosario scooted home in the fifth when second baseman Chris Taylor misplayed a grounder from Eduardo Escobar with the infield drawn in that put the Twins up 8-5.
Perkins converted his first 28 save chances, but scuffled out of the All-Star break with two blown saves and six earned runs allowed in his four outings.
"After you go through these last four days, any win is good," Twins manager Paul Molitor said. "It kind of lightens the mood a little bit."
The Mariners are buried in the AL West, so they shipped Ackley to the Yankees for prospects Ramon Flores, an outfielder, and Jose Ramirez, a right-handed pitcher.
Twins GM Terry Ryan said he had "every intention" of making a deal before the trade deadline on Friday afternoon. The Twins' biggest needs are in the bullpen and at shortstop.
"I know they've done a hell of a job of getting to this point and we're in a good position and now it's my responsibility to help the cause," Ryan said. "We've struggled here. The last 12 games have been a battle. We have not played good baseball and I'm aware of that. I'm also aware that one correct move by me could help the cause immensely because it could change the attitude in the clubhouse."
Mariners: 2B Robinson Cano (abdominal strain) and 1B Logan Morrison (bruised left thumb) sat out again and are listed as day to day. Manager Lloyd McClendon told Seattle reporters that he hopes to use Cano as the DH on Friday night.
Twins: CF Byron Buxton (left thumb) took early batting practice, with manager Paul Molitor calling it "a very good day." Buxton is nearing a rehab assignment. ... The Twins placed 3B Trevor Plouffe on the paternity list after the birth of his son Teddy. They recalled INF Jorge Polanco and expect Plouffe to return by Saturday.
Mariners: RHP Taijuan Walker (7-7, 5.03) looks to get back on track after going 0-1 with an 8.02 ERA over his last four starts.
Twins: LHP Tommy Milone (5-2, 3.58) will make his 10th career start against the Mariners. He is 3-4 with a 3.48 ERA in his previous nine outings against Seattle.