SAN FRANCISCO (AP) -- Randy Johnson had a hard time finding the strike zone in his season debut, eight months after back surgery.
Still, the San Francisco Giants didn't get many good swings against him.
The Big Unit did not allow an earned run in five innings, settling down to finish with seven strikeouts and four walks before San Francisco rallied against Arizona's bullpen for a 5-4 victory over the Diamondbacks on Monday night.
"I've got a lot of room for improvement, but considering the situation I know that things will get a lot better," Johnson said. "I felt like I was kind of battling out there and finding myself behind in the count. Obviously with the outcome, it's kind of disappointing. I felt like if the game's pitched a little bit better by myself early in the game the outcome probably isn't what it is."
Keiichi Yabu (1-1), who had dental surgery earlier in the day, worked two scoreless innings for his first win in nearly three years. He beat the Giants on May 20, 2005, with the Oakland Athletics. Yabu's victory also was the first by a Japanese pitcher for the Giants since Masanori Murakami on Sept. 30, 1965.
"I'm honored," Yabu said through a translator. "He is one of my friends and I'm glad I could win and have the same status."
Conor Jackson drove in three runs for the Diamondbacks, who had their eight-game winning streak snapped Sunday against Colorado and lost consecutive games for only the second time this year.
Johnson walked slowly to the mound, head down and already holding a 2-0 lead after Jackson's two-run homer in the first. He was one of only a few players to wear short sleeves on a blustery Bay Area night, when the first-pitch temperature was 52 degrees.
Jackson also added an RBI double in the third and Justin Upton had a run-scoring single that inning.
Arizona got a scare in the bottom of the eighth when third baseman Mark Reynolds fell over the railing of a photo well while trying to catch Eugenio Velez's foul ball and banged his shin on a lower rail. His teammates ran to him and called for the trainer. Reynolds was slow getting up but stayed in the game.
Brian Wilson finished for his fourth save in five chances.
"It's definitely a big win. It's a building block for us," San Francisco's Aaron Rowand said. "We were down, we were up, we were down, we were up and we held onto it."
Johnson, who has 284 wins, gave up three hits and three unearned runs. It took him five pitches to throw his first strike after a four-pitch leadoff walk to Randy Winn. He struck out Rowand on an 83 mph slider, then gave up another four-pitch walk to Durham before retiring Rich Aurilia on a called third strike. Johnson got out of the inning on 18 pitches, eight for strikes.
"When I was in a situation to be able to put a hitter away I was able to do that," Johnson said. "The first couple innings the problem was finding myself in that situation. I was always pitching behind in the count and that's typically not what I do."
The Giants tied it on Winn's two-run bloop single with two outs in the second, then Rowand followed with an RBI double to left and Johnson received a mound visit from pitching coach Bryan Price -- Johnson's pitch count already at 43.
He had not pitched in the big leagues since a 9-5 loss to the Los Angeles Dodgers last June 28, before his August operation.
The 44-year-old left-hander topped out at 93 mph with his fastball. Arizona manager Bob Melvin said beforehand he didn't have a pitch count for Johnson, who went 4-3 with a 3.81 ERA last season. He finished at 90 pitches with 49 strikes.
"All things considered, he got better as he went along. He was frustrated early with his command," Melvin said. "The mound was an issue. It was a joke. It was too high and the slopes were all wrong. Both teams pitched off the same mound and both teams complained about it. Even at the end he was throwing as hard as he was in the first inning. He never lost his velocity."
Johnson underwent surgery to repair a herniated disk each of the past two seasons. Last year, he had only 3 1/2 months to recover before spring training and believes he rushed back too soon. He also had back surgery in 1996.
San Francisco starter Jonathan Sanchez allowed four runs -- three earned -- and six hits in five innings.
Arizona's Eric Byrnes has a 10-game hitting streak. ... To clear roster room for Johnson, Arizona optioned RHP Jailen Peguero to Triple-A Tucson. ... Rowand did some early agility drills to test his tender right groin, then returned to the starting lineup in CF after sitting out most of the last three games. ... San Francisco planned to activate RHP Vinnie Chulk (strained throwing shoulder) from the disabled list Tuesday. ... The Elias Sports Bureau confirmed that John Bowker became the first Giant in franchise history -- not just the San Francisco era -- to homer in his first two games. He did so Saturday and Sunday against St. Louis.