HOUSTON — Jason Vargas went a long time since he last won a game in the majors.

The wait ended Friday night. Finally.

Vargas got his first win in nearly two years and the Kansas City Royals beat the Houston Astros 5-1.

Vargas (1-0) returned from Tommy John surgery last September and got his first victory since June 8, 2015. He held Houston to a run and six hits and struck out six over six innings while leading Kansas City to its first victory of the season after being swept at Minnesota in its first three games.

"I don't know that I was ever worried if I was going to get another win or another loss," Vargas said. "It's just a waiting game in rehab. It's always sounds so far removed on the telecasts when they say your last win was in June of 2015. It wasn't that you were unable to get a win, you just didn't have an opportunity. It was just a waiting game that played out the right way for us."

Royals manager Ned Yost said Vargas, 34, returning at the end of last season gave the team a boost as it headed into the winter off-season because of the competitive fire he brings to the rotation.

"Vargas was fantastic," Yost said. "We knew that getting him back gave us someone we could count on every fifth day."

The Royals entered 1 for 14 on the season with runners in scoring position, then went 3 for 15 Friday, stranding 10 runners. Kansas City finally broke out when a two-run double by Alex Gordon in the eighth inning put the Royals up by four.

"We had to grind it out," Yost said. "We had opportunities to tack on runs, but just couldn't get it done until Gordon got the big double with runners in scoring position. That made it a lot easier. We had the opportunity to give Vargas a little breathing room, but we just couldn't push the runs across. That relieved some of the pressure, and allowed the bullpen guys to be on the attack in a small ballpark."

Salvador Perez hit a solo homer in the second inning, turning on Mike Fiers' 89 mph fastball and lining a shot onto the train tracks behind the left-field foul pole.

Kansas City went up 2-0 in the sixth after a catcher's interference call with the bases loaded scored Brandon Moss. Fiers was ahead 0-2 on Paulo Orlando when Orlando's bat tipped Evan Gattis' mitt on a foul ball that allowed him to advance to first and score the run.

Fiers (0-1) allowed two runs — one earned — five hits and three walks while striking out three in six innings.

"I don't think we played a full game defensively, pitching — an all-around game," Fiers said. "In this league, you have to put it all together to win ballgames, and we didn't do that tonight."

The Astros finally began to get to Vargas in the seventh when Carlos Correa led off with a single and Carlos Beltran brought him home with a double to deep right-centre. After Beltran's hit, however, the Royals went to the bullpen and escaped the inning with the lead intact.

"We haven't gotten on track. I don't think there is a definitive answer," Astros manager A.J. Hinch said.

Kansas City pitchers allowed 23 walks in their first three games, but slowed that trend against the free-swinging Astros, walking just three batters Friday.

TRAINER'S ROOM

Astros: RHP Collin McHugh exited his rehab start in Triple-A Fresno after one inning when he experienced elbow and biceps tightness. McHugh returned to Houston on Friday to visit with team doctors and get an MRI. The Astros were hoping McHugh would need only one rehab start before joining the rotation after he started the season on the 10-day DL dealing with what he's calling "dead arm."

KEUCHEL'S GOLD GLOVE

Astros ace Dallas Keuchel was presented with his 2016 Rawlings Gold Glove Award in a pregame ceremony. Keuchel won his third straight Gold Glove Award, becoming the first Astros player to do so since Craig Biggio won four straight from 1994 to 1997.

BELTRAN'S RBI

Beltran's RBI-double in the seventh inning gave him 1,537 RBIs in his career, tying him with Joe DiMaggio for 49th place in MLB history.

TIP OF THE CAP

After Royals CF Lorenzo Cain robbed Astros hitter George Springer of what would have been an extra-base hit if not a homer on a leaping catch in front of the Astros bullpen, Springer tipped his cap to Cain. Cain took off his cap and returned the favour to Springer and his cheering teammates in the Royals dugout.

"I smiled and all the fans booed me," Cain said. "That's fine. Just making a play and got a nice sound of boos there. It's cool. It was all good."

UP NEXT

Royals: LHP Danny Duffy (0-0) makes his second start of the season on Saturday. Duffy got a no-decision in a 7-1 loss at Minnesota after allowing one run, three hits and three walks with eight strikeouts in six innings.

Astros: LHP Dallas Keuchel (1-0) threw seven scoreless innings in his first start, allowing two hits and two walks while striking out four against Seattle.