Updated

The gem Dan Haren tossed Thursday night looked awfully familiar to Albert Pujols. Except this time instead of Pujols getting fooled by what Haren was tossing, he was helping the Los Angeles Angels' right-hander put together one of the finest efforts of his career.

"He makes good hitters look pretty bad including myself, he has in the past," Pujols said. "He is pretty amazing when he keeps the ball down.

Pujols had three hits, including his 450th career home run, and Haren struck out a career-high 14 to lead the Los Angeles Angels to a 3-0 win over the Seattle Mariners on Thursday night.

The Angels and Mariners met for the first of 19 games this season and Pujols, a newcomer to the AL West rivalry, made his presence known immediately. He lined a two-run shot off Seattle starter Jason Vargas (5-4) with one-out in the top of the first, and added line-drive singles in the fourth and sixth innings. It was just his third three-hit game this season.

And those three runs proved to be plenty for Haren (2-5), who tossed the sixth shutout and 16th complete game of his career. He allowed four hits and one Seattle baserunner to reach third base. Only one other pitcher in Angels history had more strikeouts without allowing a walk than Haren did against the Mariners.

Haren matched his career-high of 12 strikeouts when he got Michael Saunders looking to end the eighth inning. He was given the chance at the complete-game despite starting the ninth at 110 pitches, but struck out Alex Liddi for the fourth time, got Ichiro Suzuki swinging, and closed it out by getting Kyle Seager to ground out.

After struggling with a sore back for the early part of the season, putting together that kind of performance was gratifying for Haren.

"Even pitching at 80 percent I should get better results than I have been getting in prior starts. I think it was obvious tonight that my stuff was better and I was feeling better in general," Haren said. "I'm happy obviously to win a game. I forgot what it felt like."

The 32-year-old Pujols is the fourth-youngest player in baseball history to reach 450 homers, behind Alex Rodriguez, Ken Griffey Jr., and Jimmie Foxx. Noted for his lack of power in his first two months with the Angels, Pujols displayed plenty of pop on the 3-1 pitch from Vargas, lining it off the facade of the second deck in left field with a thud for his fifth homer of the season and second in three games.

Pujols also stole a base and made a heads up play in the fourth inning, when Suzuki lost track of the number of outs and Pujols advanced to third after Suzuki caught the second out of the inning. He was stranded there when Erick Aybar popped out to end the inning. Pujols stole second and scored on Kendrys Morales' RBI single to left field in the sixth.

"This game comes and goes. I think the main thing is to be positive all the time and continue to make sure to make good adjustments," Pujols said. "Today I swung the bat pretty well, but tomorrow is a new day, you have to try to be consistent."

While Pujols continued to show signs of his bat waking up, Haren snapped a four-game losing streak with one of the finest outings of his career.

Haren picked up his 11th career win against Seattle and made it look easy for most of the night as Seattle failed to get a base runner between the second and sixth innings.

"I stayed with what was working and they were going to have to adjust to me," Haren said.

Saunders led off the sixth with an infield single. That ended a streak of 15 in a row set down by Haren and was Seattle's first hit since Dustin Ackley led off the bottom of the first with a single that slipped under Howie Kendrick's glove. Saunders ended up at second after a stolen base, but Haren got a pop up from Ackley and struck out Liddi to end Seattle's first scoring threat.

Suzuki led off the seventh with a double and advanced to third on an infield groundout, but was stranded when Haren got Jesus Montero waving at a pitch off the plate and froze Mike Carp on a 3-2 pitch for his 11th strikeout.

It was the 13th 10-strikeout game of Haren's career and topped his previous career high of 12 accomplished twice, the last time coming in 2008. Seattle manager Eric Wedge was not pleased with how easy Haren made it look.

"We didn't make him make any adjustments. He just kept doing the same thing throughout the course of the game. That just can't happen," Wedge said. "We've got a lot of young ballplayers, but they are far enough along they've got to do better than that.

NOTES: Haren picked up his 1,500th career strikeout when he got Saunders looking in the eighth inning. ... It was the league-leading seventh shutout this season for the Angels. ... Seattle activated C Miguel Olivo from the 15-day DL and optioned OF Casper Wells to Triple-A Tacoma. Olivo was 0-for-3 in his return to the Mariners lineup.