KANSAS CITY, Mo. (AP) — Brian Bannister pitched seven shutout innings and Billy Butler hit a three-run homer as the Kansas City Royals beat the Texas Rangers 6-1 Friday night.

Bannister held the Rangers to four hits, striking out six and walking two. The rookie right-hander has won his last two starts, allowing eight hits and one run in 14 innings.

Acquired last December in a trade with the New York Mets for Ambiorix Burgos, Bannister (7-6) threw a season-high 116 pitches, 76 for strikes, before being replaced by Joakim Soria to start the eighth. Bannister retired 12 straight after Sammy Sosa’s single in the third inning.

After Mark Grudzielanek’s single and Mark Teahen walked, Butler homered to center in the first off Jamey Wright to give Kansas City a 3-0 lead. Butler, the Royals’ rookie designated hitter, is batting .351 with six doubles, three home runs and 24 RBIs in 19 games.

Sosa hit his team-leading 16th homer and the 604th of his career with two outs in the eighth to snap the Royals’ 17-inning scoreless streak. Soria became the 366th big league pitcher to yield a home run to Sosa, whose previous homer against the Royals came July 18, 2000, off Blake Stein.

Wright (3-3) had not allowed a home run since June 16, a span of five starts. He suffered his first loss since June 29, giving up five runs and 10 hits in 6 1-3 innings with four walks and two strikeouts.

Wright has not had a start this season where he has struck out more than he has walked.

The Royals got another run in the third when Teahen, who led off the inning with a double and advanced to third on Butler’s ground out, scored on Ross Gload’s sacrifice fly.

The Royals increased their advantage to 5-0 in the seventh when John Buck, who snapped an 0-for-12 skid with a leadoff single, scored on Grudzielanek’s third hit.