ST. LOUIS (AP) -- Bartolo Colon worked eight dominant innings in 91-degree heat and keyed the go-ahead rally with his first career extra-base hit, helping the New York Mets beat the St. Louis Cardinals 3-2 Wednesday to avoid a three-game sweep.

Bartolo Colon of the New York Mets pitches at Busch Stadium in St. Louis. (Jeff Curry, Getty Images)

Eric Young and David Wright had an RBI apiece in a two-run sixth that put the Mets up by a run, and Young added an RBI double off Seth Maness in the seventh -- a run aided by Colon's second sacrifice of the game.

Matt Carpenter hit his third career leadoff homer for the Cardinals.

Colon (7-5) surprised Lance Lynn (7-5) with a double to open the sixth. He scored his second career run, and first since 2002, when Young doubled.

Dana Eveland got the last out for his second career save.

(Copyright 2014 The Associated Press. All rights reserved. This material may not be published, broadcast, rewritten or redistributed.)