SEATTLE -- In a battle of Opening Day starters between the Miami Marlins and Seattle Mariners, it was the offenses who took top billing, in a 10-5 Seattle victory on Wednesday at Safeco Field.

Mitch Haniger had three hits, including a double, and added a walk, in addition to driving in four runs.

Third baseman Kyle Seager nearly matched his teammate, driving in four runs on two hits and a bases-loaded walk, as the Mariners used a hit and walk-laden assault on Miami pitching.

"We really ground out at-bats today, my hat is off to the guys," Mariners manager Scott Servais said.

The Seattle victory came despite an impressive showing by Miami outfielders Christian Yelich and Giancarlo Stanton, who each hit long home runs off of Mariners starter Felix Hernandez.

Hernandez (2-1) was far from his best, allowing five hits in the first inning, four before recording an out.

With the bases loaded, the first two outs of the game came when Miami first baseman Justin Bour lifted a fly ball to Mariner left fielder Jarrod Dyson.

Dyson, who had 11 outfield assists in 2016, fired home on the fly to beat Martin Prado running from third by about 10 feet.

"I was just praying the throw stayed on line, because my throws have a tendency to tail a bit," Dyson said. "Thank God, it did and we got him."

The first inning proved to be the toughest for Hernandez, who allowed only the two solo home runs after that, finishing with 6 1/3 innings, allowing 12 hits and four runs while striking out five and walking one.

Miami starter Edinson Volquez (0-2) was not sharp from the first pitch, and Mariner hitters were able to capitalize early, scoring eight runs in the first four innings.

It was Volquez's first loss against Seattle, as he previously was 5-0 in eight appearances against Seattle, including seven starts.

"Edinson just didn't seem to be himself today," Marlins manager Don Mattingly said. "His stuff was up, and his command was off. He tried to battle through it, but just wasn't able to."

Yelich was the star for Miami in a losing effort, adding two singles to go with his home run, and a superlative catch in the first inning on a deep fly ball by Dyson.

Yelich, sprinting with his back to home plate, leaped into the air and caught the ball, only to crash face-first into the wall. The center fielder was unhurt on the play.

Having robbed Yelich on a similar play last year, Dyson was asked about the tables being turned:

"I don't like hits getting taken from me. I got him last year and now he got me. (I) can't say much about it but 'great play.'"

Outfielder Ichiro Suzuki, who played 11 seasons in Seattle to begin his major league career and was honored with a bobblehead giveaway celebrating his career before the game, brought the crowd to its feet when he batted in the ninth.

In what might well be his final appearance in Seattle, Suzuki did not let the crowd down, hitting the first pitch from Mariners reliever Evan Marshall for a home run to right field.

"Only Ichiro," Mattingly said. "Pretty cool."

The win was Seattle's fifth in the last six games, as the Mariners try to recover from a 2-8 start.

"We talked with our guys, and we reminded them: every World Series winner in the past five years had a stretch losing eight or nine out of 10," Servais said. "We are just the first ones to do it right out of the gate."

Seattle (7-9) finished its first homestand at 6-3. The Mariners travel to Oakland for a four-game series against the Athletics that begins Thursday night.

Miami (8-7) and will have a travel day before beginning a weekend series against the Padres in San Diego.

NOTES: Marlins OF Ichiro Suzuki's fourth inning single was his 1,239th hit at Safeco Field, the most in the stadium's history. ... Seattle OF Mitch Haniger's second inning single extended his hitting streak to 13 games. ... Mariner hitters drew nine walks during the game, a season high.