MIAMI -- Balmy sea breeze is just what the Miami Marlins needed to snap their slump and beat Josh Beckett.
Some heat from Josh Johnson helped, too.
Desperate for a turnaround, the Marlins opened their retractable roof for the first time in nearly two months Monday night, took to the outdoor setting and snapped a six-game losing streak with a 4-1 win over Beckett and the Boston Red Sox.
Johnson outpitched his former teammate, and rookie Donovan Solano drove in two runs as the Marlins improved to 1-6 on their homestand. They're 3-2 with the roof of their new ballpark open.
The Red Sox, last in the AL East, lost for the seventh time in eight games.
Beckett (4-7), the Marlins' postseason star when they won the World Series in 2003, pitched against them for the first time. He fell behind 4-0 after two innings but didn't allow another hit, retiring 14 in a row. He departed for a pinch hitter after seven innings.
Johnson (4-4) also went seven innings, allowing four hits and one run. Heath Bell completed a five-hitter by striking out the side for his 13th save in 17 chances.
To change their luck, the Marlins opened the retractable roof on their new ballpark for the first time since April 18. President of baseball operations Larry Beinfest came up with the idea.
"He said, ‘We can't trade for 25 guys, so let's open the roof,' " team president David Samson said. "This is our version of a slump buster."
On an unusually mild June evening, with low humidity and a temperature of 79 at game time, the Marlins played better from the start. They scored three times in the first inning to lead for only the second time since the homestand began.
Solano, in the lineup because manager Ozzie Guillen gave second baseman Omar Infante the night off, had a hit and drove in two runs. He's batting .455. Gaby Sanchez singled for his second RBI in as many games since being recalled from Triple-A. The Marlins went 2 for 3 with runners in scoring position after going 5 for 50 in those situations previously during the homestand.
Johnson needed 27 pitches to get through the first inning. After the first two batters reached he settled down, retiring 11 in a row during one stretch before Scott Podsednik singled in the sixth. Podsednik later scored on a sacrifice fly by Adrian Gonzalez.
Johnson earned an assist when he inadvertently kicked Kevin Youkilis' sharp one-hopper to shortstop Jose Reyes for a 1-6-3 out.
Reyes led off the first with a triple and scored on Solano's sacrifice fly. Giancarlo Stanton singled and scored from first when Logan Morrison doubled and right fielder Gonzalez bobbled the ball for an error. Sanchez followed with a run-scoring single.
Solano had a two-out RBI single in the second inning off Beckett, who fell to 0-3 in his past four starts.