CHICAGO — The Cubs made Jon Lester's job easier by staking him to an early lead.
Lester was dominant through six innings of two-hit ball in his 100th start with the Cubs, Jason Heyward hit a two-run homer and Chicago defeated the St. Louis Cardinals 8-5 on Thursday.
Kris Bryant and Kyle Schwarber each had two RBIs as Chicago took a 6-1 lead after two innings. Every Cubs starter had a hit, including three by Anthony Rizzo and two each by Heyward, Schwarber and Javier Baez.
Heyward's homer and a triple by Javier Baez were the only extra-base hits as Chicago sprayed 12 singles around Wrigley Field.
"This is so much fun to watch," Cubs manager Joe Maddon said. "Keep your launch angles, keep your exit velocities, give me a good at-bat. Seeing inside the ball, using the whole field. With that you'll see better situational hitting, better batting average. That's just good hitting."
Lester (2-0) didn't allow a hit until Jedd Gyorko lined a single to left with one out in the fifth. The left-hander gave a first-inning unearned run, struck out seven and walked one.
"Everything was good," Lester said. "Any time you have six runs in the first two innings, it always helps."
Brandon Morrow pitched a perfect ninth to complete a five-hitter and remain perfect in three save chances.
Ten of Chicago's first 16 batters reached against Luke Weaver (2-1), who allowed six runs and nine hits in four innings. He had yielded only four runs over 17 1/3 innings in three previous starts.
"Just balls hit well to the opposite side again," manager Mike Matheny said. He made his adjustment, but it was six runs later when he started to get locked in in the third. We were lucky to get him through four."
Weaver gave the Cubs credit.
"They did a good job of not chasing below the zone," he said. "They just had a good approach today."
A day after a game was postponed because of rain and a temperature just above freezing, it was 47 when the game began.
Harrison Bader was hit by a pitch in the first, stole second, advanced to third on catcher Willson Contreras's throwing error and scored on Lester's wild pitch to Marcell Ozuna .
Baez was moved up to second in the batting order by Maddon, and Baez tripled in a bottom half of the first that included RBI singles by Bryant and Schwarber. The Cubs opened a 6-1 lead in the second when Albert Almora Jr., Rizzo and Schwarber had RBI singles, and Bryant hit a sacrifice fly.
Heyward's fifth-inning homer against Matt Bowman made it 8-1.
Eddie Butler walked Paul DeJong with the bases-loaded in a four-run seventh, and Steve Cishek forced in a run when he hit pinch-hitter Kolten Wong with a pitch. Dexter Fowler hit into a run-scoring forceout, and another run scored when Baez's throw from second to first trying for a double play was wide for an error.
The Cardinals recalled OF Tyler O'Neill from Triple-A Memphis and optioned RHP John Brebbia to the Pacific Coast League team. The 22-year-old O'Neill made his major league debut when he pinch hit for Weaver in the fifth and struck out swinging. In 12 games with Memphis, the muscular Canadian batted .388 with six homers, 18 RBIs and an .837 slugging percentage. By not recalling O'Neill before Wednesday, the Cardinals delayed his eligibility for free agency by a year, until after the 2025 season. He is the son of Terry O'Neill, named Mr. Canada — given to the nation's best body builder — in 1975.
Cardinals: OF Tommy Pham was held out of the starting lineup up rest a groin injury, but pinch hit in the seventh and flied out.
Cubs: INF/OF Ben Zobrist was scratched for a second straight game with back tightness.
Cardinals: RHP Michael Wacha (2-1, 5.52) is to start at home Friday against Cincinnati LHP Brandon Finnegan (0-1, 10.38). It will be the first game for new Reds manager Jim Riggleman, who replaced Bryan Price on Thursday after the Reds' 3-15 start.
Cubs: RHP Kyle Hendricks (0-1, 3.71) is to start the opener of a three-game series on Friday at Colorado, which goes with RHP Jon Gray (1-3, 6.23). Showers changing to snow are forecast.
More AP baseball: https://apnews.com/tag/MLBbaseball