SAN DIEGO (AP) — Taijuan Walker pitched one-hit ball for six innings, Robinson Cano and Nelson Cruz homered and the Seattle Mariners beat the punchless San Diego Padres 7-0 on Wednesday.

Cano had four hits and drove in three runs. Cruz connected for his 20th homer on his 35th birthday.

Walker (7-6) combined with four relievers on a three-hitter for Seattle's second straight shutout of San Diego. The Padres have been blanked 13 times this year.

Walker struck out seven and walked none.

James Shields (7-3) failed for the fifth time to get his eighth victory. He's lost three straight starts.