Ian Happ triggered a six-run rally in the ninth inning, and the Cubs beat the St. Louis Cardinals 7-6 in a matchup of NL Central rivals.
Chicago snapped a two-game losing streak by rallying against St. Louis closer Alex Reyes, who converted his first 22 saves opportunities this season.
Javier Baez added a two-run hit in the middle of the rally.
Chicago sent 10 batters to the plate in the ninth and capitalized on three walks, an error and a missed third strike.
Baez trimmed the deficit to 6-5 with a two-run single off Reyes, Happ followed with a two-run double to put his team up 7-6.
Nolan Arenado, Jose Rondon and Tommy Edman homered for St. Louis, which had won three in a row.
Craig Kimbrel picked up his 22nd save in 24 opportunities. He set the side down in order in the ninth and fanned Paul Goldschmidt to end the game.
Dillon Maples (1-0) picked up the win with a scoreless inning.
Reyes (5-4) gave up three runs on two hits.
The Cubs entered the ninth inning with just three hits. Patrick Wisdom reached safely on a wild-pitch third strike to kick-start the comeback. Sergio Alcantara and Anthony Rizzo drew bases-loaded walks to trim the deficit to 6-3 and set the stage for Happ's heroics.
St. Louis starter Johan Oviedo was looking for his first win in 17 career starts. He allowed one run on three hits over five-plus innings. The Cuban-born right-hander struck out five and walked one. He was removed after giving up a leadoff single to Baez to begin the sixth.
Kyle Hendricks (12-4, 3.65 ERA) will face RHP Adam Wainwright (7-6, 3.71) in the third game of the four-game set on Wednesday. Hendricks has won his last 10 decisions and has gone at least six innings in each of his last 12 starts. Wainwright has recorded 17 career wins against the Cubs, the most of any active pitcher.