MILWAUKEE (AP) -- After getting shelled in his previous start, Brewers starter Yovani Gallardo decided to do a little damage himself on Saturday night.
Gallardo singled, doubled, scored two runs and executed a successful sacrifice bunt off former teammate Shaun Marcum in a key spot to help Milwaukee hold off the New York Mets 7-6.
''I just try to put the ball in the play,'' Gallardo said. ''The first base hit didn't feel too good on my hands. I hit it off the end of the bat and I just got a lucky break.''
Gallardo said the double he laced in the fourth inning wasn't in the location Marcum wanted it.
''The slider he threw me was up. He made a mistake,'' Gallardo said. ''I was able to put a good swing on it.''
Milwaukee scored a key run in the sixth with Gallardo in the thick of things. After Logan Schafer led off with a single, Gallardo executed a two-strike sacrifice bunt. Marcum fielded the ball cleanly but his throw was dropped by second-baseman Daniel Murphy, who was covering first. The ball skipped into right field, allowing Schafer to race around the bases and beat a throw to the plate.
''I was just trying to get it down, especially with two strikes,'' Gallardo said of his bunt. ''I saw it hit the ground and I just started running to first. Then I saw the throw was kind of wide of first base.''
On the mound, Gallardo (7-8), who has been the subject of recent trade speculation, scattered six hits over six innings and allowed four earned runs, striking out six and walking three. In previous outing Monday against Washington, Gallardo gave up nine hits and eight earned runs in three innings.
Gallardo gave up one hit through the first four innings Saturday before running into some trouble in the fifth and sixth.
''I think he started to get a little tired,'' said Brewers catcher Jonathan Lucroy, who homered and drove in two runs. ''I think he really threw well the first four innings. His last two he scuffled a little, but for the most part it was a solid start and he gave us a chance to win. That's most important.''
Brewers manager Ron Roenicke liked what he saw from Gallardo early in the game.
''Yovani started off really well then lost some command,'' Roenicke said.
Francisco Rodriguez recorded his eighth save of the season and 302nd of his career despite giving up a two-out solo home run to Marlon Byrd in the ninth.
The Brewers jumped on Marcum (1-10) for a run in the first inning. Lucroy's two-out single scored Norichika Aoki, who led off the game with an infield hit.
Milwaukee added two runs in the second. Schafer singled, moved to third on Gallardo's single and scored on Aoki's base hit. Jean Segura followed with a sacrifice fly that scored Gallardo.
Lucroy extended the Brewers lead to 4-0 with a one-out, solo home run to left field in the third.
''(Marcum) left a lot of balls up, more than he normally does,'' Mets manager Terry Collins said. ''He's really a change-speed guy that keeps the ball down. The ball to Lucroy he left up. He left a breaking ball out over the plate in the first inning. That's just not where he usually pitches.''
Gallardo helped himself again in the fourth, leading off with a double off the right field wall and scoring on Segura's one-out single.
The Mets broke through for two runs against Gallardo in the fifth. John Buck led off with a home run off the right field foul pole. Daniel Murphy had a run-scoring double later in the inning.
The Mets slashed the Brewers' lead to 5-4 on Buck's two-run single in the sixth.
New York cut the lead to 6-5 in the seventh on Byrd's sacrifice fly. Schafer's run-scoring double, his third hit of the game, put Milwaukee ahead 7-5.
Byrd's home run in the ninth pulled the Mets within a run, but Rodriguez struck out Kirk Nieuwenhuis to end the game.
Marcum, who compiled a 20-11 record while pitching for Milwaukee in 2011 and 2012, allowed 11 hits and five earned runs over five innings. He walked one and struck out three.
''I fell behind in some counts and this isn't the most pitcher-friendly park to do that in so it makes it rough,'' Marcum said. ''It was nice to come back here. I enjoyed my two years here. Obviously, I wish the results were better.''
NOTES: The Brewers and Mets each will have two representatives on the NL All-Star team. The Mets' David Wright will start at third base after winning fan balloting at the position. Teammate Matt Harvey was named to the squad's pitching staff. Brewers OF Carlos Gomez and SS Jean Segura were selected as reserves. ... Brewers OF Ryan Braun took batting practice on the field Saturday after taking swings in a batting cage on Friday. Braun has been sidelined about a month with a thumb injury. ... The Mets' Ike Davis stole his first base of the season in the second inning.