BOSTON -- The Red Sox scored runs in bunches in tallying four consecutive victories. They leaned on pitching and defense to earn their latest.
Eduardo Rodriguez pitched six scoreless innings and the Red Sox took advantage of a sloppy performance by the Seattle Mariners for their season-high fifth straight win, 3-0 on Friday night.
It was the third win in a row for Rodriguez (4-1), who gave up just five hits and struck out four while throwing a season-high 112 pitches. Craig Kimbrel earned his 13th save.
"I just go out there and pitch," Rodriguez said. "I'm never really thinking about numbers. I just go out there and throw my pitches and do the best I can do."
That effort is producing one of the best stretches of his three-year career.
Rodriguez has pitched at least six innings in his last seven starts, going 4-0 in that span. He hasn't allowed a run in 10 innings and only 11 runs in his last 49 1/3 innings. His ERA is just 2.01 over that same period.
"He was amazing," Jackie Bradley Jr. said. "Put zeroes on the board all night long. And he made the big pitch when he needed to."
The only run support Rodriguez needed came in the second inning, when Hanley Ramirez scored on Josh Rutledge's RBI groundout. Boston added two more runs in the sixth, scoring on a wild pitch and passed ball.
Manager John Farrell said his 24-year-old pitcher is in a "very good place" right now.
"He was powerful tonight," he said. "It's just a matter of his abilities coming together. This has always been an extremely talented young guy. We've talked about his maturity, we've talked about his progression. It's been on display here for a good number of starts consecutively."
Yovani Gallardo (2-5) took the loss. He lasted 5 1/3 innings, gave up seven hits and was responsible for all three of Boston's runs.
"The whole night obviously wasn't consistent," he said.
Seattle has won just one of its last seven.
Meanwhile, Boston gave Rodriguez got lots of help defensively. Bradley had a pair of nice plays, getting an outfield assist in the second and running down another ball on the warning track in the sixth.
In addition to the pitching miscues, the Mariners had all kinds of issues in the wet conditions, committing two fielding errors.
The Red Sox left 11 runners on base, leaving the door open for the Mariners to get back in the game. But Seattle couldn't capitalize, going 0 for 6 with runners in scoring position. The Mariners also left seven runners stranded.
Mariners: LHP James Paxton (strained left forearm) was slated to make a rehab start Friday night in Double-A Arkansas. He has been on the 10-day disabled list since May 5. He could be activated for a start at the end of the month against Colorado.
Red Sox: Infielder Marco Hernandez will be out the remainder of the season after undergoing stabilization surgery on his left shoulder on Friday. Hernandez was placed on the disabled list May 4 with a left shoulder misalignment. The 24-year-old hit .276 with two RBIs in 21 games. ... A night after he left the game with left knee pain, 2B Dustin Pedroia was held out Friday for what Farrell said was "precautionary reasons" because of the wet playing surface.
Mariners manager Scott Servais said they are doing everything they can to find production from an offense that has gone missing.
"Offensively, we struggled to put innings together. That's kind of been the story here for the last week or so, we just haven't gotten the line moving at all, for whatever reason," he said. "Guys are frustrated by it, we all are. We know we're better than that, offensively. It's not happening right now."
Seattle was held scoreless for the fourth time this season.
Mariners: RHP Rob Whalen (0-2, 4.09 ERA in Triple-A Tacoma) will be making his first major league start since last season with Atlanta. He will be 12th different starting pitcher the Mariners have used this season.
Red Sox: LHP Brian Johnson (1-0, 7.20 ERA) will be making his second major league start this year and third of his career.