HOUSTON -- On Thursday, the parents of Houston rookie starter Dallas Keuchel surprised him with the news that they had found last-minute bargain airline tickets from Tulsa to see his next start.
On Saturday, he put on a show for them and the rest of the crowd by pitching a complete game to get his first win in his second major league start.
"I know both my parents probably cried a little bit," Keuchel said. "They got a last-minute deal out here from Southwest, so it was special."
Keuchel (1-0) allowed six hits and struck out three with just one walk, after allowing four hits and a run in five innings in his major league-debut against the Rangers last week.
"I'm so proud of Dallas being able to come in here and do that," Houston manager Brad Mills said. "That's his second outing and he's pitched extremely well both outings. He did a good job in Texas, and you can't say enough about the job he did today. I thought he mixed his pitches, got behind in the count, and was able to come back with only the one walk."
It was the first complete game for Houston since June 2011 and the first by an Astros rookie since Taylor Buchholz did it in May 2006.
Keuchel was elevated from Triple-A Oklahoma City when Bud Norris went on the disabled list. Mills admitted that Keuchel's success is going to make things tricky down the road.
"That's what you want guys to do. You want to make those decisions difficult," he said. "When a guy throws your first complete game of the year and throws two real good games, I think you've got to kind of wonder a little bit. We're going to think about some things and go from there."
The Astros had scored just one run in the past three games combined and were hitless through the first four innings on Saturday.
They discovered some offense in the fifth inning and tied it at 1-1, before Martinez's two-run shot gave them a 3-1 lead. Schafer connected on the next pitch to extend the advantage.
Cleveland's Jeanmar Gomez (4-7) got off to a great start, but was undone by his fifth-inning struggles. He allowed six hits and five runs in 5 2/3 innings.
Asdrubal Cabrera led off the fourth inning with his ninth home run to put Cleveland up 1-0.
Keuchel got back on track, retiring the next nine batters. The 24-year-old Keuchel didn't allow another hit until a single by Jason Kipnis to start the seventh inning.
But Jose Lopez grounded into a force out before Keuchel retired the next two batters to end the inning. He pitched a 1-2-3 eighth inning before allowing two hits in a scoreless ninth to wrap up his victory.
"Their kid pitched a tremendous game," Indians manager Manny Acta said. "He pitched very effectively, changed speeds very well and did an outstanding job."
The Astros didn't get a hit until Brian Bogusevic and Johnson connected on back-to-back doubles to start the fifth inning and tie it 1-all.
Martinez's one-out homer, which bounced high on the wall above the Crawford Boxes in left field, scored Johnson and gave Houston a 3-1 lead.
"I just wanted to hit something hard and get the run in and get the lead for us," Martinez said of his homer. "It felt great. When I hit it, I knew it was gone right away."
Schafer then went deep to the Crawford Boxes for his first homer since April 22. Altuve singled with two outs in that inning, but was caught stealing to end the inning.
Jed Lowrie walked to start the sixth and scored from first on a double by Carlos Lee to leave Houston up 5-1. Gomez retired Bogusevic and Johnson before he was replaced by Tony Sipp, who struck out Jason Castro to end the inning.
Lowrie doubled after the homer by Altuve in the eighth inning and scored on a double by Lee to make it 7-1. Johnson's second double of the game came with one out to score Lee and leave Houston with a season-high nine extra-base hits. The Astros hadn't had more than six in a game before Saturday.
Kipnis finished with three hits. ... Houston LF Justin Maxwell was scratched from the lineup because of an injured left ankle that has been bothering him for a while. He was replaced Martinez. ... These teams wrap up the series on Sunday when Cleveland's Derek Lowe opposes left-hander J.A. Happ.