MILWAUKEE -- Jeremy Hefner no longer has to worry about the prospect of being sent down to the minors.
Hefner allowed one run on two hits over seven innings and the New York Mets turned two throwing errors by Milwaukee third baseman Juan Francisco into two unearned runs and a 2-1 victory over the Brewers on Sunday.
"I was maybe one or two bad starts from being in (Triple-A) Las Vegas," said Hefner, who lost his first five decisions and did not win until his 10th start on May 29. "Something had to change. Obviously the mechanical adjustment was key. And, I'm making pitches."
Josh Satin had two doubles and a single for the Mets, scoring one run and driving in the other to extend his hitting streak to 11 games.
Hefner (4-6), who matched his career-high with eight strikeouts, allowed two runners in the second when he hit Rickie Weeks with two outs and Sean Halton followed with a single. But Hefner struck out Logan Schafer to end the inning. Hefner has a 1.64 ERA since June 4.
"I think he's proven himself," Mets manager Terry Collins said. "His stuff is good enough. He's a legitimate guy in the rotation."
Bobby Parnell, who came on with a runner on first and two outs in the eighth, finished for his 15th save.
Reliever Tom Gorzelanny (1-2), pressed into his second spot start of the season to give Wily Peralta a couple extra days to rest his ailing left hamstring, allowed two unearned runs on eight hits in six innings, striking out a season-high eight.
The Mets hustled across an unearned run in the fourth. With two outs, Satin doubled to center, narrowly sliding in ahead of the throw from center fielder Carlos Gomez. Francisco then barehanded Andrew Brown's slow bouncer, but his hurried throw eluded Halton at first, allowing Brown to reach and Satin to score.
On the replay, it appeared that second baseman Weeks missed the initial swipe, but tagged Satin higher on the leg before he reached the bag.
"I'm not saying that was an easy call," said Brewers manager Ron Roenicke, who went out to ask the umpires about the call. "He gets to look at the first swipe that he misses him on. And, it's pretty tough to stay with him and see the next part."
"It's easy to see when you go back and look at the replay, but he doesn't have that," Roenicke said. "When it's in fast motion, it's tough to see, but it hurt us."
Francisco's second throwing error on almost identical play set up the Mets second run in the sixth. With one out, he again barehanded a slow roller by Marlon Byrd and threw wildly past first, sending Byrd to second. Satin followed with an RBI double off the wall in right.
"I just pretend I'm playing every day," said Satin, hitting .382 since being called up from Las Vegas on June 11. "I hit in the cages a lot. I'm comfortable with my role."
Francisco had started 29 games this season for the Atlanta Braves before being acquired by the Brewers on June 3. He has started 21 games at first for Milwaukee, but was making only his third start at third base.
When asked if Francisco should have held the ball, Roenicke said, "You don't want to eat it. If he makes the throw online, he's going to beat the runner. I think both times and if you throw it and put it online, they're out."
Ruben Tejada returned from his rehab assignment with Triple-A Las Vegas, was reinstated from the 15-day disabled list and then optioned back to Las Vegas. ... Hefner has allowed two earned runs or fewer in his last seven starts, the first Mets pitcher to do since Johan Santana had 13 straight in 2008-09. ... Norichika Aoki's eighth-inning single was his 22nd infield hit, third-most in baseball.