Henderson Alvarez didn’t produce another no-hitter to go with the one he delivered on the final day of the 2013 season.

But he came tantalizingly close.

Alvarez pitched a gem Saturday at Marlins Park, holding the Seattle Mariners to only two hits in a 7-0 victory.

All that prevented Alvarez from working his second no-hitter in seven months was a leadoff single in the sixth by Dustin Ackley and one-out double in the ninth by Mike Zunino.

Otherwise, Alvarez was perfect.

He didn’t issue any walks or hit a batter. And the Marlins -- for one of the few times this season -- played flawless defense behind him.

The result: Alvarez came within two outs of becoming the first pitcher in Marlins history to face the minimum 27 batters over a nine-inning game. Instead, he had to settle for equaling the club mark of facing 28 batters, which is shared by Al Leiter and Kevin Brown.

“I came out trying to locate my fastball down, and it came out right today,” Alvarez said through his translator and teammate, Jose Fernandez.

Alvarez, who throws a heavy sinker, induced 17 ground ball outs.

“He throws 95 (mph) with sink -- pretty much sums it up,” catcher Jarrod Saltalamacchia explained of Alvarez’s ability to turn in low-hit performances.

Alvarez was on from the get-go, and everyone could see it.

“You could tell he was on a mission tonight,” said manager Mike Redmond. “His velo (velocity) was up -- 94, 95 -- in the first inning. I think for him, that’s a good sign.”

Alvarez retired the first 15 batters he faced before Ackley broke up his no-hit bid by connecting on a 94-mph sinker and sending it up the middle for a single.

“That wasn’t the pitch that I wanted to throw,” Alvarez said. “It was a little high, and I wanted to throw a change-up down.”

Alvarez immediately induced a ground ball double play out of Zunino that erased Ackley and kept alive his streak of facing the minimum number of batters. Zunino doubled down the third-base line with one out in the ninth to prevent the right-hander from sealing the deal in only 27 batters.

Alvarez wasted few pitches, totaling only 90 -- 62 of them for strikes -- over the nine innings.

“Talk about efficiency,” Redmond said. “He’s got plenty of bullets left to finish games.”

Alvarez also had plenty of run support, of which he was one of several contributors. Marcell Ozuna slammed a 3-run homer into The Clevelander bar, the ball splashing into the swimming pool inside the club.

The Marlins have now homered in 10 consecutive games, the longest such streak since a 13-game run of hitting home runs in 2009.