Alfonso Soriano clubbed a tie-breaking, two-run homer in the eighth inning to help the Cubs end their eight-game losing streak with a 5-3 triumph over Cincinnati on a soggy night at Wrigley Field.
Starlin Castro delivered the tying two-run double in the sixth inning and Anthony Rizzo drove in the other run for Chicago.
Sean Marshall (4-4) walked Rizzo with one out, and Logan Ondrusek came in to face Soriano, who smacked a 2-2 pitch over the wall in center field. Soriano recorded his 11th straight season with at least 20 homers.
"I just didn't make my pitch like I needed to," said Ondrusek. "He laid off a curveball in the dirt and fouled off some stuff down so I thought if I elevated it I could get it by him and I just didn't get it up high enough."
Soriano joined David Ortiz and Albert Pujols as the only sluggers to record 11-consecutive 20-home run seasons, including the 2012 campaign.
"That's something to be proud of," Cubs manager Dale Sveum said. "Not too many people can hit 20 or more home runs in 11 consecutive years. I'm just glad he did it with us."
Soriano also joined Hall of Famer Andre Dawson as the only players to hit 20 or more long balls in each of their first six seasons as a Cub.
Shawn Camp (3-5) retired the side in order in the eighth and Carlos Marmol benefited from a double play in the ninth to record his 14th save of the season.
Zack Cozart led off the opener of this four-game series with a home run and Todd Frazier also had a solo shot for the NL Central leaders, who lost their season-high fifth in a row.
Chris Volstad, who threw six innings for the Cubs, had a shaky first inning. After giving up Cozart's blast to left, Volstad walked Drew Stubbs and allowed a single to Brandon Phillips before a second run scored on Ryan Ludwick's groundout.
Mike Leake, who also threw six frames for Cincinnati, gave up an RBI infield hit to Rizzo in the bottom of the first, but the Reds expanded their lead to 3-1 in the fourth when Frazier led off with a blast to left-center.
Castro's double to center plated Darwin Barney and Rizzo with two outs in the sixth.
Cubs catcher Steve Clevenger was ejected by home plate umpire Jeff Nelson in the fifth inning...The start of the game was delayed 1 hour, 20 minutes due to rain...Catcher Devin Mesoraco returned for the Reds. He had been on the seven- day concussion disabled list and went 0-for-3.