Pittsburgh remained tied with St. Louis for the NL Central lead after taking three of four from the last-place Cubs and winning for the sixth time in seven games.
Morneau, acquired from Minnesota on Aug. 31, drove in his first run for the Pirates. The 2006 AL MVP is batting .279 (12 for 43) with Pittsburgh.
With the score 2-2 in the eighth, Andrew McCutchen was hit by a pitch from Pedro Strop (2-2), took second on Marlon Byrd's bloop single to centre and scored on Morneau's single.
Kyle Farnsworth (1-0) pitched a scoreless eighth, and Mark Melancon completed a three-hitter with a perfect ninth for his 16th save in 18 chances.
CARDINALS 12, MARINERS 2
ST. LOUIS (AP) — Yadier Molina broke out of a slump with a home run and three singles as Shelby Miller and St. Louis remained tied for first place in the NL Central by beating Seattle in an interleague matchup.
Matt Adams also homered as St. Louis won for the seventh time in nine games and kept pace with Pittsburgh. Both teams are 87-62 with 13 games remaining.
Miller (14-9) gave up one earned run and three hits in five innings. He became the first St. Louis rookie to reach 14 wins in a season since Dick Hughes won 16 in 1967.
Molina's second-inning homer off Erasmo Ramirez (5-2) snapped an 0-for-15 skid. Molina scored three times and raised his batting average to .317.
BREWERS 6, REDS 5
MILWAUKEE (AP) — Sean Halton hit a solo homer with one out in the bottom of the ninth inning to lift Milwaukee to the comeback victory over Cincinnati.
Halton's home run came off reliever Zach Duke (1-2), the fifth Cincinnati pitcher. It was Halton's third homer of the season and first career walk-off.
Jean Segura sparked a rally with a two-run triple and Carlos Gomez made a game-saving catch for Milwaukee, which dealt a blow to the Reds' pursuit of the NL Central title. The Brewers entered the eighth trailing 5-2. Segura's hit came after Reds relievers walked the first two batters of the inning. Jonathan Lucroy followed with a sacrifice fly to tie it.
Jim Henderson (4-5) pitched a scoreless inning in relief to pick up the win.
Gomez robbed Jay Bruce of what would have been a three-run homer in the ninth when he extended over the centre field fence with two outs.
NATIONALS 11, PHILLIES 2
WASHINGTON (AP) — Wilson Ramos had four hits and five RBIs, Jordan Zimmermann pitched seven innings for his NL-best 18th win and Washington kept up its late playoff push by routing Philadelphia.
Denard Span extended his hitting streak to 26 games, Bryce Harper hit a pair of doubles and a single and scored three times, and every player in the Nationals' starting lineup had at least one hit.
Washington, which began the day 5 1/2 games behind Cincinnati for the NL's second wild-card berth, has won eight of nine and 25 of 35.
Zimmerman (18-8) scattered seven hits and single runs in the second and third innings with seven strikeouts.
GIANTS, 4, DODGERS 2
LOS ANGELES (AP) — Hunter Pence hit two more home runs, pinch-hitter Brett Pill connected for a tiebreaking shot leading off the eighth inning, and San Francisco beat Los Angeles.
Pinch-hitter Yasiel Puig grounded out with the bases loaded to end the game. The NL West-leading Dodgers lost three of four to San Francisco, and the magic number to clinch their first division title since 2009 remained at four after second-place Arizona won.
Pence has 19 RBIs in six games. He drove in three a day after his grand slam and career-high seven RBIs led the Giants to a 19-3 rout at Dodger Stadium.
Jean Machi (3-1) pitched one inning. Sergio Romo closed for his 35th save in 39 chances.
Paco Rodriguez (3-3) gave up Pill's homer.
DIAMONDBACKS 8, ROCKIES 2
PHOENIX (AP) — Paul Goldschmidt homered and went 4 for 4, driving in career high-tying five runs to lead Arizona past Colorado.
Colorado star Todd Helton did not play, a day after announcing he would retire at the end of this season. The crowd at Chase Field cheered him early in the game and he waved his cap in appreciation.
Goldschmidt had an RBI single in the first inning, hit a two-run homer in the third and added a two-run double in the fourth, all against Jhoulys Chacin (13-9).
Goldschmidt leads the NL with 114 RBIs.
Randall Delgado (5-6) allowed two runs and five hits in six innings for the Diamondbacks, who won have won three of four.
PADRES 4, BRAVES 0
ATLANTA (AP) — Burch Smith struck out 10 in seven innings to earn his first major league victory, Chase Headley and Tommy Medica homered, and San Diego beat Atlanta.
The Braves lead the NL East by 10 games over Washington. Atlanta opens a three-game series at Nationals Park on Monday night, and can clinch the division by winning twice there.
Smith (1-1) held the Braves hitless until pitcher Julio Teheran singled to lead off the sixth.
Smith allowed three hits and walked two. The rookie made his fifth career start — he had a 12.41 ERA in his previous starts. He struck out seven of the first 13 Atlanta batters.
Teheran (12-8) gave up seven hits, four runs, no walks and struck out six in 6 2-3 innings.
METS 1, MARLINS 0, 12 INNINGS
NEW YORK (AP) — Slumping rookie Travis d'Arnaud hit a winning single with two outs in the 12th inning, lifting New York over Florida.
Dillon Gee and Tom Koehler took a pitchers' duel into the eighth inning before the Marlins and Mets each used five relievers to finish off the fifth extra-inning matchup this season between the NL East's worst teams.
D'Arnaud came through in a game of many missed opportunities after the two previous batters grounded into forceouts at the plate. New York had loaded the bases with no outs against Zach Phillip (0-1), making his third appearance for the Marlins.
Vic Black (1-0) pitched a perfect 12th inning for his first career win.