NEW YORK -- Mariano Rivera pitched a perfect eighth inning in his final All-Star appearance, Jose Bautista, J.J. Hardy and Jason Kipnis drove in runs to back a night of pulsating pitching, and the American League beat the National League 3-0 Tuesday night to stop a three-year losing streak.
Ten pitchers combined a three-hitter and the 43-year-old Rivera, who is retiring at the end of the season, remained unscored on in nine All-Star innings. Rivera won the MVP award.
The only older pitcher to appear in an All-Star game was 47-year-old Satchel Paige.
Rivera was left alone on the field for a 90-second standing ovation, waving his cap to the crowd and touching it to his heart as the other All-Stars watched from the dugout railing and applauded.
Bautista had a sacrifice fly in the fourth off Patrick Corbin that stopped the AL's 17-inning scoreless streak. Hardy added a run-scoring grounder in the fifth against Cliff Lee and Kipnis hit an RBI double in the eighth off Craig Kimbrell.
Matt Harvey and Max Scherzer dazzled with pitching at the start. Harvey threw two scoreless innings, striking out three, and Scherzer retired the side in order in his only frame.
The Yankees got a scare when Harvey hit Robinson Cano on the side of his right knee in the first, forcing him from the game. An X-ray was negative, and Cano was diagnosed with a bruised quadriceps that did not seem major.
"A little tight. I didn't want to aggravate it and just try to play through a situation," Cano said. "Nothing bad."
Before a record crowd of 45,186 at Citi Field, the New York Mets hosted baseball's big summer event for the first time since 1964 at Shea Stadium.
Harvey was followed by Los Angeles Dodgers ace Clayton Kershaw, who retired three in a row.
Detroit slugger Miguel Cabrera, the first All-Star coming off a Triple Crown since Boston's Carl Yastrzemski at Houston's Astrodome in 1968, doubled to the right-center gap in the fourth and took third when Chris Davis lined a single off the glove of leaping first baseman Joey Votto. Bautista followed with a fly to medium center.
Adam Jones doubled down the left-field line in the fifth -- the AL's third leadoff double -- and advanced when Joe Mauer singled off the glove of diving shortstop Troy Tulowitzki and into left field.
Hardy hit a grounder to second baseman Brandon Phillips, who flipped to Tulowitzki for the force. Hardy then beat the delay as Jones scored for a 2-0 lead.
Speedy Mike Trout then hit a one-hopper to Tulowitzki, who flipped to second. Phillips caught the ball with his bare hand and threw to first for a double play.
The NL had won three in a row after losing the first seven games after Major League Baseball decided the winning league gets home-field advantage for the World Series.
Following a trend that began last summer in Kansas City, many players wore flashy spikes they would never use during the regular season -- bright orange high tops for Jones, black and gold for Arizona's Corbin.
"It seemed like everybody was wearing something pretty flashy. I guess the theme of this year's All-Star game was the flashy cleats," said Harvey, who wore bright orange with gold trim.
Harvey became just the third Mets pitcher to start an All-Star game, following Tom Seaver and Dwight Gooden. Seaver threw out the ceremonial first pitch, moving in front of the rubber and tossing to current Mets captain David Wright, who quickly moved in front of the plate to prevent the ball from bouncing.
Harvey was only the 11th pitcher to start an All-Star game on his home mound, the first since Houston's Roger Clemens in 2004. The 24-year-old has made just 29 major league starts, the fewest for an All-Star starter since Hideo Nomo with 13 in 1995.
He quickly got into trouble, with Trout hitting an opposite-field double down the right-field line with his first pitch, a 97 mph fastball. Two pitches later, Harvey drilled Cano on the side of the right knee with a 96 mph fastball.
Cano was examined by a trainer and walked gingerly to first base, and Harvey struck out Cabrera. Cano then walked slowly toward the AL dugout and went for an X-ray, which was negative. He was replaced by Dustin Pedroia.
"Obviously I apologized and made sure that he was OK," Harvey said. "It wasn't intentional."
Harvey reached 99 mph against Davis, who flied out to center, and got Bautista to strike out while chasing a slider.
Scherzer, 13-0 before Saturday's loss to Texas, retired Phillips, Beltran and Votto in order in the first on 12 pitches.