BALTIMORE - Six hours after the scheduled time of the first pitch, Baltimore Orioles manager Buck Showalter spoke with admiration about the way his players and the Seattle Mariners handled a tight game and a lengthy rain delay.

"It's a grind game for both teams," Showalter said. "It's what separates what these guys do for a living. It's just so easy to give in."

The Orioles and Mariners combined to use 13 pitchers Thursday in a duel that lasted 3 1/2 hours and ended with Baltimore escaping with a 5-4 victory.

"We really battled," Seattle manager Lloyd McClendon said. "Just couldn't come through."

After Steve Pearce hit his first career grand slam to put Baltimore up 4-0 in the first inning, the Orioles managed only one more hit until Chris Davis led off the eighth with a single off Danny Farquhar (0-3). Davis advanced on a groundout and scored the tiebreaking run on an awkward slide after J.J. Hardy bounced a single up the middle.

"It's nice to get hits when you're feeling like I feel right now," said Hardy, who's still trying to get in a groove after starting the season on the disabled list with a shoulder injury. "Every day I'm making adjustments."

Tommy Hunter (1-1) worked out of a bases-loaded jam in the eighth and Zach Britton got three straight outs for his ninth save.

Although the Mariners rallied from the early deficit, they went 3 for 15 with runners in scoring position and had 13 left on base.

"We just couldn't really get the big hit to really put us over the hump," McClendon said.

The Mariners were handicapped when home plate umpire John Tumpane ejected Kyle Seager in the fifth inning for arguing a called third strike. Seager's replacement, Willie Bloomquist, twice was retired with the bases loaded.

"I'd like to say that's baseball, but it's not baseball," McClendon said. "I didn't think that was warranted. It's very unfortunate. I don't know, maybe he got tired of the Orioles (complaining about) balls and strikes all day."

Playing his first game with Seattle after being traded from the Cubs on Tuesday, catcher Welington Castillo drove in a run and scored one.

Pearce connected off J.A. Happ following two singles and a walk. It was his fourth home run of the season and only the second since April 7.

It was 4-1 in the middle of the third inning when rain caused a stoppage of play of 2 hours, 5 minutes. That forced Orioles starter Chris Tillman out of the game, and Brian Matusz promptly gave up a two-run single to pinch-hitter Rickie Weeks.

Seattle loaded the bases with no outs in the seventh. Darren O'Day was on the brink of escaping without damage, getting two outs before walking Logan Morrison on a 3-2 pitch to force in the tying run.

But Baltimore bounced back to win the deciding matchup of the three-game series. The Orioles went 5-4 in a homestand that followed an extended road trip because of rioting in Baltimore.

STARTERS DISMISSED

Mariners: Happ never got the chance to return after retiring Baltimore in the second inning. That ended a run of 14 straight starts in which the left-hander went at least five innings.

Orioles: Tillman gave up one run in three innings, and because he recently battled back spasms, he wasn't coming back. "It was a frustrating day, but that's selfish," he said. "We got a win today, and a series win, so you move on."

TRAINERS ROOM

Mariners: McClendon said no date has been set for RHP Hisashi Iwakuma (strained back muscle) to begin throwing. Iwakuma has been on the DL since April 25.

Orioles: INF Everth Cabrera (bruised foot) will come off the DL on Friday, Showalter said. ... INF Rey Navarro was unavailable after having emergency dental work done before the game.

ON DECK

Mariners: Felix Hernandez (6-1, 1.85 ERA) looks to rebound from his first defeat of the season when the Mariners face Toronto on Friday night in the opener of a three-game series.

Orioles: Baltimore takes to the road to face Miami in a three-game series that begins Friday night. It's the only time over a 20-game stretch that the Orioles won't play at home.