PHOENIX -- Lance Berkman and Morgan Ensberg had the booming blows for the Houston Astros. The biggest hit, though, was a bloop single off the end of Willy Taveras' bat.
Taveras' two-run, two-out single ignited a seven-run sixth inning for Houston and the Astros went on to beat the Arizona Diamondbacks 8-5 on Sunday.
"The big blow today was Willy," Houston manager Phil Garner said. "They had us in a little bit of a pickle there."
Leading 2-1, the Diamondbacks had intentionally walked left-handed pinch-hitter Mike Lamb to load the bases and get to Taveras, who had struck out twice against Orlando "El Duque" Hernandez in his previous two at-bats.
"Orlando was throwing some great pitches at me," Taveras said. "My first two RBIs (of the season), it was a great opportunity."
Berkman, who had three hits -- two of them doubles -- and three RBI in the game, singled in two runs, then Ensberg hit a three-run homer -- all off reliever Jason Grimsley -- in the sixth-inning uprising.
"The presence of Lance in the lineup healthy is just something you can't explain," Ensberg said. "He goes in there and crushes the ball. When I came up to bat, the pressure was really off. It was really those two guys (Taveras and Berkman) who got the big hits."
Ensberg homered for the second time in two games as Houston scored 18 in taking the last two of a three-game set in Arizona.
Luis Gonzalez was 1-for-20 in the homestand -- a span of six games -- before hitting a home run just over the right-field fence leading off the fourth to put Arizona up 2-1.
Hernandez was on the brink of escaping in the sixth after, with runners at second and third and no outs, he struck out Brad Ausmus and Adam Everett on three pitches each. Then Taveras' single dropped in front of Gonzalez in left field.
"It wasn't really a bad pitch," Diamondbacks catcher Johnny Estrada said. "It was a pretty decent pitch. The guy got a blooper and the flood gates opened after that."
Hernandez hit Orlando Palmeiro to load the bases, and El Duque's day was over. Grimsley came on and the Astros' offense erupted.
Hernandez (1-2) allowed six runs and six hits in 5 2/3 innings. He struck out eight, walked four -- one intentionally -- and hit two batters.
Russ Springer (1-0) got the victory after pitching to one batter, retiring Conor Jackson on a flyout with the bases loaded and two outs in the fifth. Brad Lidge got three outs for his third save in three opportunities.
Arizona's Jeff DaVanon singled twice, walked twice and drove in two runs.
In the third, Hernandez struck out the first two hitters, but Palmeiro reached on a bunt single, then scored from first when Berkman doubled down the right-field line. Hernandez hit Ensberg on the left wrist, but Jason Lane bounced into a fielder's choice to end the inning.
Arizona tied it at 1-1 in its half of the third. Johnny Estrada led off with a single, then took second on Hernandez's sacrifice bunt. Craig Counsell struck out, but DaVanon singled to center to bring home Estrada.
Hernandez got the third hit of his major league career when he singled leading off the fifth. The Diamondbacks went on to load the bases before Springer came on to retire Jackson.
Berkman is hitting .356 with 17 RBI and Ensberg .400 with 10 walks for a .529 on-base percentage. Both downplayed their fast start.
"I don't feel like I'm on fire, but I'm getting my hits," Berkman said. "I still have those at-bats when I feel like I'm back in spring training. I'm not complaining, don't get me wrong. If I feel like this all year and hit good, that's fine."
Houston's Fernando Nieve made his first major league start. He went four-plus innings, allowing two runs and four hits. He struck out four and walked two.
Taveras has two errors in the past two games. ... The Diamondbacks are 2-4 on their first homestand of the season with San Francisco coming to town for four games beginning Monday night. ... Craig Biggio was hit by a pitch, extending his major league record in that category to 275. ... Ausmus walked three times.