Jeff Karstens has given the Pittsburgh Pirates a perfect start.
Almost a perfect game, too.
The recently acquired righthander set down the first 23 batters before Chris Young's two-out double in the eighth inning and finished with a two-hitter yesterday in a 2-0 victory over the Arizona Diamondbacks in Phoenix.
Karstens (2-0) has tossed 15 scoreless innings - against a pair of first-place teams - since coming to Pittsburgh in a six-player trade July 26 that sent outfielder Xavier Nady and reliever Damaso Marte to the New York Yankees. This masterpiece followed a 3-0 victory Friday over the Chicago Cubs at Wrigley Field.
"It's been a big change," Karstens said. "I was pitching well in Triple A and I felt like I wasn't going to go anywhere."
Karstens was in complete command until Young lined a clean double down the left-field line. He walked the leadoff batter in the ninth, and Stephen Drew singled with two outs for Arizona's other hit.
Karstens, 25, outpitched Randy Johnson (9-8), who tossed baseball's most recent perfect game in May 2004. Karstens also got his first two major league hits off the five-time Cy Young Award winner and scored on Doug Mientkiewicz's eighth-inning double.
Yankees 5, Rangers 3 - Jason Giambi homered, Sidney Ponson beat his former team, and Mariano Rivera returned from an aching back to save visiting New York's win over Texas.
Ponson (7-2), released by Texas in June, gave up three runs and six hits in 6 1/3 innings.
Rivera, who hadn't pitched since Friday because of back spasms, allowed a hit in the ninth but earned his career-best 27th consecutive save this season.
Phillies 5, Marlins 0 - Kyle Kendrick (10-5) pitched six scoreless innings, Ryan Howard homered, and host Philadelphia beat Florida, boosting the Phillies' lead to 2 1/2 games over the Marlins in the NL East.
Marlins starter Anibal Sanchez (1-1) gave up four runs - three earned - and five hits in five innings in his second start since returning from shoulder surgery.
Padres 4, Mets 2 - Jody Gerut hit Pedro Martínez's first pitch for a home run, helping visiting San Diego beat New York.
Cha Seung Baek baffled the Mets again, allowing two runs and eight hits in 6 1/3 innings. The righthander is 2-0 with a 2.19 ERA in two starts against New York this season. Brian Giles and Chase Headley also homered for the last-place Padres, who improved to 5-1 against the Mets this year. The Mets dropped three games behind the Phillies in the NL East.
Cardinals 9, Dodgers 6 - Ryan Ludwick tied a franchise record with a homer in his fifth straight game, Albert Pujols hit a grand slam, and host St. Louis beat Los Angeles.
Pujols's sixth career grand slam and Ludwick's drive during a five-run fourth chased Derek Lowe (8-10), who gave up eight runs and 13 hits in only 3 1/3 innings.
Manny Ramírez hit his 513th home run in the second inning to break a tie with Ernie Banks and Eddie Mathews for 20th place on the career list. Ramírez added an RBI single in the third to give the Dodgers a 3-1 lead.
Cubs 11, Astros 4 - Mark DeRosa hit a grand slam and Alfonso Soriano had a three-run homer during an eight-run third that sent host Chicago past Houston.
DeRosa's fourth career slam made it 5-4 and propelled the Cubs to their ninth win in 11 games. The surging Soriano capped the burst with his second three-run shot in two days. He has 20 hits, 6 homers, and 14 RBIs in his last 11 games.
White Sox 5, Tigers 1 - Jim Thome hit a three-run homer and John Danks worked efficiently into the seventh inning, helping host Chicago over Detroit.
Danks (9-4) allowed one run on four hits over 6 2/3 innings, giving the White Sox a lift after they used seven relievers in a 14-inning win over Detroit the previous night. D.J. Carrasco got one out in relief, Octavio Dotel pitched a perfect eighth, and Bobby Jenks a scoreless ninth to preserve the win.
Twins 7, Mariners 3 - Rookie Denard Span drove in a career-high four runs and robbed Adrian Beltre of a go-ahead homer in the seventh inning, leading visiting Minnesota over Seattle.
Angels 9, Orioles 4 - Vladimir Guerrero homered and drove in four runs, Garret Anderson had three hits and two RBIs, and host Los Angeles beat Baltimore.
Blue Jays 5, Athletics 1 - Rod Barajas hit a three-run homer, Shaun Marcum pitched seven strong innings, and host Toronto handed Oakland its ninth straight loss.
Brewers 6, Reds 3 - Struggling leadoff hitter Rickie Weeks, who came in with just five hits in his last 29 at-bats, matched his career high with four hits, helping Milwaukee win in Cincinnati.
Giants 3, Braves 2 - Tim Lincecum (12-3) pitched eight innings for his first win in more than three weeks and Aaron Rowand homered and drove in three runs, lifting host San Francisco.
The game between the Nationals and Rockies in Denver was postponed because of rain and will be made up as part of a doubleheader today.