"It's good to get the first one out of the way, and also get a walkoff win. The combination of both was very exciting," Hamilton said. "When I looked up and saw the crowd give me an ovation, I went, `Whew.' I've been satisfied with my at-bats lately. I've been going a little deeper in counts and hitting the ball right at people and not finding holes. So I didn't change anything today."
A loss would have dropped the Angels to the first 2-9 start in the franchise's 53-year history and the team's first 0-5 opening at home.
"You can do everything right and fail, and you can do everything wrong and succeed. That's baseball," Hamilton said.
Hamilton had gone 10 games and 37 at-bats without a home run. The seven-year veteran's longest homer drought from the start of a season is 13 games and 46 at-bats in 2010 -- the same year he was voted AL MVP after winning the AL batting title with a .359 average, hitting 32 homers and driving in 100 runs.
"In 2010 I started pretty slow and the power wasn't there at the beginning," Hamilton said. "But it's amazing how the game can change. One game can turn into a good week and then a good month. But more than anything, we want to start racking up some Ws."
Veras (0-1) came on in the ninth to protect a 4-3 lead for Lucas Harrell and walked No. 9 hitter Luis Jimenez with one out. J.B. Shuck flied out, Mike Trout reached on a two-out infield single to the left side and Pujols followed with a drive inside third base and down the left-field line.
"Albert Pujols is Albert Pujols. He's one of the best players for a reason," Astros manager Bo Porter said. "It's a tough loss, and it's unfortunate because the guys played their hearts out."
Michael Roth (1-0) pitched two perfect innings with four strikeouts to win in his major league debut. The 23-year-old left-hander was promoted earlier in the day from Double-A Arkansas.
The Astros, who had won their previous three games, led 4-1 in the eighth. Right fielder J.D. Martinez dropped Howie Kendrick's fly for a two-base error that allowed Pujols to score, and Chris Iannetta followed with a sacrifice fly to center. Kendrick was doubled off second after shortstop Marwin Gonzalez cut off the throw from Justin Maxwell and fired to second baseman Jose Altuve for the third out.
Angels starter Garrett Richards allowed four runs, three hits and three walks over 6 1/3 innings in place of ace Jered Weaver, who broke his non-pitching arm getting out of the way of a line drive by Mitch Moreland on April 7 at Texas. The 24-year-old right-hander started for the first time since last Aug. 1, joining a rotation that entered with a 6.02 ERA.
Facing the Astros for the first time, Richards became the first Angels starter this season to get past the sixth inning.
"I thought I threw the ball well tonight," Richards said. "I didn't have 100-percent command of my breaking ball early on, but I started to develop a feel for it later in the game and just kept moving the fastball in and out. My arm feels good, my body feels good, and I'm just going to step in and try to give us a chance to win every time."
Harrell allowed a run and six hits in 5 2/3 innings and struck out five in his first career appearance against the Angels.
Chris Carter put the Astros ahead with a two-run homer in the fourth, but Hamilton's sixth-inning drive cut the lead in half.
"He threw me the exact same pitch before that, and I tried to get too big and got too long and swung through it," Hamilton said. "I thought maybe he'd give me something away to chase up and away, or he might come back with the same pitch again. And he came back with the same pitch."
Trout was presented with his 2012 AL Rookie of the Year award at home plate before the game by manager Mike Scioscia and general manager Jerry Dipoto. The only other player in club history to win it was RF Tim Salmon in 1993. ... The Angels signed 12-year veteran RHP Kip Wells to a minor league contract. Wells, who turns 36 on April 21, led the NL in losses with 18 in 2005 (Pittsburgh) and 17 in 2007 (St. Louis). He has thrown only 37 1/3 innings in the big leagues since 2009, when he pitched for Washington and Cincinnati. ... Angels SS Erick Aybar and RHP Kevin Jepsen were placed on the 15-day DL. The move with Aybar was retroactive to April 10. ... Shuck was recalled on Saturday from Triple-A Sale Lake, becoming the Angels' fourth different leadoff batter in four games and third since Trout was moved to the No. 2 hole. Only four players batted leadoff all of last season for the Angels.