CLEVELAND -- James Shields allowed two runs in six innings and Mike Moustakas hit a three-run homer to lead the Kansas City Royals to an 8-2 win over the Cleveland Indians on Tuesday night.
Shields (2-2) struck out nine and won his second straight start.
Moustakas' homer sparked Kansas City's four-run fourth that featured five hits. The Royals are 10-0 when scoring at least four runs.
Eric Hosmer had four hits, including an RBI double in the seventh.
Cleveland manager Terry Francona turned 55 years old Tuesday, but the Indians were unable to win a third straight game for the first time this season.
Danny Salazar (0-3) didn't allow a hit until the fourth, but unraveled quickly when Hosmer led off with a single. Billy Butler followed with another single before Salazar retired the next two hitters. Moustakas drove a 1-1 pitch into Kansas City's bullpen in right field, breaking a 2 for 15 slump.
Alcides Escobar followed with another single, stole second and went to third on catcher Yan Gomes' throwing error. Jarrod Dyson's bunt hit made it 4-1.
Salazar didn't get through the fifth. Hosmer doubled with one out before Butler hit a drive to deep center. Michael Bourn got a glove on the ball, but couldn't make the leaping catch as Hosmer scored and Butler was credited with a double.
Hosmer was 4 for 5. His seventh-inning double gave Kansas City a four-run lead and he added a single in the ninth.
Salazar, who pitched well in 10 starts after being called up last season, hasn't been able to find the same consistency in his first four starts. The right-hander allowed five runs and seven hits in 4 1/3 innings. He struck out six.
Shields allowed an unearned run in the second, but held the Indians in check until the sixth while his teammates gave him the lead. Bourn's bases-loaded single put Cleveland ahead. Second baseman Omar Infante's fielding error on Asdrubal Cabrera's ground ball started the rally. David Murphy singled and Lonnie Chisenhall was hit by a pitch with two outs.
Bourn's sharp single to right scored Cabrera, but Murphy was held at third on Nori Aoki's strong throw. The inning ended when Nick Swisher flied out.
Gomes has six errors in 18 games after committing three last season.
Royals catcher Salvador Perez was 0 for 5 and is hitless in his last 22 at-bats.
Cleveland third baseman Carlos Santana is in a 2 for 43 skid after going hitless in four at-bats.
The game-time temperature was announced at 50 degrees, but a strong wind made it feel much colder. The crowd of 8,848 barely surpassed the all-tune low at Progressive Field of 8,726.
Copyright 2014 Associated Press. All Rights Reserved.