NEW YORK -- Brian McCann put an emphatic end to his season-opening slump, hitting his first two home runs for the New York Yankees to help beat John Lackey and the Boston Red Sox 7-4 Saturday.

Carlos Beltran, Alfonso Soriano and Kelly Johnson also connected as the Yankees scored all their runs on homers. Lackey was tagged for a career-high four home runs in 5 2-3 innings.

New York has won two of three in a series that wraps up Sunday night.

A.J. Pierzynski hit his first home run for the Red Sox.

After striking out in the first inning and dropping his batting average to .158, McCann quickly reversed his fortunes. The seven-time All-Star who left Atlanta to sign an $85 million, five-year deal with the Yankees led off the fourth with a liner into the first row of the second deck in right field.

McCann hurried around the bases, and fans were still cheering when Soriano followed with his third home run of the week.

Beltran opened the sixth with a double and McCann homered to right-centre. It was the catcher's 10th career multihomer game.

The Red Sox have been shifting on McCann during this series, moving an extra infielder onto the right side once they get a strike on him. Facing Lackey for the first time, McCann made moot any shift.

Hiroki Kuroda (2-1) pitched into the seventh, and reliever Matt Thornton gave up Mike Carp's two-run single that made it 6-4. With runners at the corners, Carp was caught stealing for the third out.

Shawn Kelley pitched a perfect ninth for his second save.

Lackey (2-1) threw plenty of strikes, but gave up 10 hits. He walked none, fanned six and missed a chance to get off to a 3-0 start for the first time in his career.

Jacoby Ellsbury bunted for a two-out single in the first and Beltran homered on an 0-2 pitch right down the middle. Lackey was already stalking toward the plate to get a new ball from the umpire before Beltran reached second base.

Johnson hit his third homer in the eighth.