"I've heard nothing but amazing things about the city of San Diego and I am excited to finally have the opportunity to play there," Piazza said in a statement released by the team. "I hope that I can help bring another division title back to San Diego, then continue on to a successful postseason run."
Piazza is expected to hold a news conference in San Diego on Monday.
Piazza will have a $1.25 million salary in 2006, with the chance to make $250,000 each for 85, 95 and 105 games started.
The deal includes an $8 million mutual option for 2007, with a $750,000 buyout.
"He's a feared hitter," general manager Kevin Towers said. "Even though he hasn't put up the numbers he did three or four years ago, any time Mike Piazza comes up, it strikes a lot of fear in pitchers.
"In talking to him, he's got me excited," Towers added. "He really wants to show the rest of baseball he can be a real force. Certainly, he's going to be a presence in the middle of our lineup."
Towers said Piazza thinks he can still catch 90 to 100 games a season. Piazza will be playing for manager Bruce Bochy, a former big-league catcher.
"He takes a lot of pride in calling a game," Towers said.
The 12-time All-Star holds the major-league record for most career home runs by a catcher (374). He has 397 homers overall and is a career .311 hitter.
The 37-year-old became a free agent after last season, when he hit .251 with 19 homers and 62 RBI in 113 games for the Mets. It was his lowest batting average since he hit .232 in 69 at-bats with the Dodgers in 1992, his first season in the big leagues.
Still, his 19 homers would have led the power-poor Padres. Ryan Klesko hit 18 for San Diego, which struggled to the division title before being swept out of the playoffs by the St. Louis Cardinals.St. Louis Cardinals