Oberholtzer was perfect in the seventh and eighth innings — with a little help from his defense. Altuve scooped up a hard-hit grounder headed for the outfield and made a leaping throw to beat Dustin Ackley to first base for the first out of the eighth inning.
Oberholtzer retired the first six batters he faced before walking Justin Smoak to start the third. A two-out single by Brad Miller sent Smoak to third, but Oberholtzer struck out Franklin to end the threat.
"He was just keeping us off balance," Franklin said of Oberholtzer. "He mixed up his pitches well and we didn't have any timely hits to go along with it."
The Mariners managed one-out singles in both the fourth and the sixth innings, but left both players stranded when they couldn't string together any hits. Oberholtzer pitched a 1-2-3 fifth inning in between those frames.
Houston threatened in the second inning. Matt Dominguez led off the bottom of the inning with a single, but was out at second on a force play on a ball hit by Brett Wallace. A single with two outs by Crowe left Wallace at third. But the Astros came away empty-handed when Hoes grounded out.
Chris Carter walked with two outs in the fourth and reached third on a double by Crowe. Another groundout by Hoes ended that threat, too.
Iwakuma yielded a single to Wallace with one out in the sixth inning before retiring the last five batters he faced, with two strikeouts.
NOTES: The Mariners recalled former closer Tom Wilhelmsen Triple-A Tacoma on Sunday to begin what is expected to be a number of September callups. He has 24 saves this season. He got the last out of the eighth inning. ... Sunday was the 10th game of 20 in a row for the Astros. Their next day off is Sept. 12. ... Houston opens a three-game series with Minnesota on Monday when Astros right-hander Paul Clemens opposes Andrew Albers. ... Seattle ace Felix Hernandez is scheduled to pitch on Monday against Kansas City's Danny Duffy in the opener of a four-game series.