Sunderland battled back from two goals down to force a third-round replay against Bolton in the FA Cup.
Lee Chung-yong intercepted a pass by Carlos Cuellar to fire the hosts in front and Marvin Sordell's close-range header doubled the lead.
Bolton keeper Andy Lonergan made two excellent saves from Steven Fletcher before sub Connor Wickham halved the deficit from close range.
Craig Gardner completed the comeback with a stunning 20-yard drive.
Sunderland had to call upon all of their resolve to avoid an upset against a Bolton team currently 16th in the Championship, and keep alive their hopes of lifting the FA Cup again - 40 years on from their famous win over Leeds at Wembley.
Around 5,000 travelling fans, buoyed by news of Newcastle's demise at Brighton earlier in the day, were in full voice from the start of the game.
But their mood would soon be dampened by Bolton's opening goal, which came courtesy of a catastrophic error by Cuellar.
Black Cats bite again
Bolton have now failed to beat Sunderland in any of their last nine encounters, a run that stretches back to November 2008
The Spaniard, one of eight players to retain his starting place following Sunderland's Premier League defeat by Liverpool on Wednesday evening, played a pass from the left touchline across his own 18-yard box to erroneously pick out Lee, who calmly rolled the ball into an unguarded net.
Fletcher headed narrowly over from a Sebastian Larsson corner, while Lonergan smartly kept out long-range efforts from Gardner and David Vaughan.
But the visitors appeared more disjointed as the first half went on, becoming increasingly frustrated at their inability to break down the Bolton defence, marshalled superbly by Darren Pratley and captain Keith Andrews.
A half-time team talk from manager Martin O'Neill failed to have the desired effect as the hosts went 2-0 up three minutes after the interval.
After goalkeeper Simon Mignolet failed to clear a corner, the ball was returned into the penalty area, where an unmarked Sordell was waiting to nod in his second goal for Wanderers.
Seconds later, Lonergan made a flying save to keep out Fletcher's diving header, and he repeated the trick on the hour mark, but Bolton's two-goal lead would prove to be short-lived.
Wickham, who had replaced the injured Cuellar moments earlier, pounced on a loose ball following a goalmouth scramble and fired in through Lonergan's legs from six yards.
The Black Cats pressed for an equaliser and came close again with headers from Fletcher and Wickham, before Gardner's superb strike levelled the scores.
A corner was cleared to the former Birmingham man, who was allowed time and space to control the ball and unleash an unstoppable right-footed shot high into the net.
Bolton's goal came under severe pressure in the closing stages, Titus Bramble coming closest with a header into the side-netting, but Dougie Freedman's men held firm to force a replay at the Stadium of Light.
Bolton manager Dougie Freedman said:
"From a 2-0 lead I'm disappointed but overall I'm thrilled with the result because I thought we showed great commitment and desire at the end to defend for our lives.
"For the first 60 minutes I thought we controlled the game and we played a style of football I like to play.
"Overall, it was the old cliche of a game of two halves. It was a great tie to watch and in the end we had to dig in and defend - and that was part of the game."
Sunderland manager Martin O'Neill said:
"It [naming just six substitutes] was not a point whatsoever, it is the way things fell.
"We couldn't change it much today because we couldn't fill the bench but we treat the competition with its proper merit.
"We had 5,000 people spend a lot of hard-earned money to come down and support us and they deserved better than we were serving up in the first half."
Live text and stats
Saturday, 5 January 2013
- Bolton 36%
- Sunderland 64%
- Final Result
- Full Time
- 90:00+3:57 The referee ends the match.
- 90:00+2:24 Adam Johnson takes a shot. Corner from the right by-line taken by Adam Johnson, Titus Bramble has a headed effort at goal
from just inside the penalty area that misses to the left of the goal.
- 90:00+1:16 Foul by James McClean on Chung-Yong Lee, free kick awarded. Free kick taken by Andy Lonergan.
- 90:00+0:34 Martin Petrov takes a shot. Simon Mignolet makes a comfortable save.
- 85:41 Outswinging corner taken by James McClean.
- 85:00 Foul by Samuel Ricketts on Steven Fletcher, free kick awarded. Free kick taken by Sebastian Larsson.
- 83:00 Sebastian Larsson takes a inswinging corner to the near post, clearance made by Zat Knight. Adam Johnson takes a inswinging
corner from the right by-line played to the near post.
- 80:16 Substitution David Ngog goes off and Chris Eagles comes on.
- 79:17 Strike on goal comes in from Craig Gardner from the free kick.
- 79:17 Booking Darren Pratley receives a yellow card.
- 79:07 Darren Pratley challenges Craig Gardner unfairly and gives away a free kick.
- 77:47 Free kick awarded for a foul by Chung-Yong Lee on Sebastian Larsson. Jack Colback restarts play with the free kick.
- 77:20 Free kick awarded for a foul by Zat Knight on Steven Fletcher. David Vaughan restarts play with the free kick.
- 74:56 Jack Colback provided the assist for the goal.
- 74:56 GOAL - Craig Gardner:Bolton 2 - 2 Sunderland Craig Gardner finds the net with a goal from long distance to the top left corner of the goal. Bolton 2-2 Sunderland.
- 74:36 Short corner worked by Adam Johnson.
- 72:19 Short corner worked by Chung-Yong Lee.
- 71:46 Steven Fletcher takes a shot. Save by Andy Lonergan.
- 70:33 Phil Bardsley gives away a free kick for an unfair challenge on David Ngog. Marcos Alonso restarts play with the free kick.
- 68:36 Martin Petrov produces a right-footed shot from the edge of the area and misses to the left of the goal.
- 66:01 Unfair challenge on Adam Johnson by Marcos Alonso results in a free kick. Adam Johnson crosses the ball from the free kick
left-footed from right wing.
- 63:09 Strike comes in from Craig Gardner from the free kick, save made by Andy Lonergan. Effort on goal by Phil Bardsley from just
inside the penalty area goes over the target.
- 63:09 Substitution (Bolton) makes a substitution, with Kevin Davies coming on for Marvin Sordell.
- 63:09 Unfair challenge on Connor Wickham by Darren Pratley results in a free kick.
- 59:21 The assist for the goal came from Steven Fletcher.
- 59:21 GOAL - Connor Wickham:Bolton 2 - 1 Sunderland Goal scored by Connor Wickham from close range low into the middle of the goal. Bolton 2-1 Sunderland.
- 58:56 Steven Fletcher takes a shot. Save by Andy Lonergan. Corner taken by Sebastian Larsson from the left by-line to the near post,
- 58:39 Adam Johnson takes a inswinging corner from the right by-line to the near post.
- 56:59 Substitution Carlos Cuellar goes off and Connor Wickham comes on.
- 55:37 Chung-Yong Lee takes a shot. Blocked by Phil Bardsley.
- 54:29 Headed effort from inside the area by Steven Fletcher misses to the left of the target.
- 52:02 Foul by Adam Johnson on Samuel Ricketts, free kick awarded. Free kick taken by Andy Lonergan.
- 51:29 James McClean challenges Tyrone Mears unfairly and gives away a free kick. Direct free kick taken by Tyrone Mears.
- 48:00 Martin Petrov provided the assist for the goal. Steven Fletcher takes a shot. Andy Lonergan makes a save.
- 48:00 GOAL - Marvin Sordell:Bolton 2 - 0 Sunderland Marvin Sordell scores a goal from close range to the bottom left corner of the goal. Bolton 2-0 Sunderland.
- 47:31 Corner taken by Chung-Yong Lee played to the near post.
- 45:55 Keith Andrews challenges Sebastian Larsson unfairly and gives away a free kick. Free kick taken by David Vaughan.
- 45:01 The referee gets the second half underway.
- Half Time
- 45:00+2:11 The referee blows for half time.
- 42:01 David Vaughan takes a shot. Inswinging corner taken from the right by-line by Adam Johnson, clearance made by Andy Lonergan.
Marcos Alonso produces a left-footed shot from just outside the box that misses to the right of the target.
- 40:42 Corner taken by Sebastian Larsson played to the near post, Headed effort from deep inside the penalty area by Steven Fletcher
goes harmlessly over the crossbar.
- 37:35 Free kick awarded for a foul by Darren Pratley on David Vaughan. Sebastian Larsson takes the free kick.
- 35:20 Martin Petrov decides to take the corner short.
- 35:20 Substitution Joe Riley leaves the field to be replaced by Tyrone Mears.
- 29:29 Sebastian Larsson takes a inswinging corner from the left by-line to the near post, clearance made by Marcos Alonso.
- 28:48 Foul by Marcos Alonso on Adam Johnson, free kick awarded. Adam Johnson delivers the ball from the free kick left-footed from
right wing, Andy Lonergan manages to make a clearance.
- 25:17 Inswinging corner taken right-footed by Sebastian Larsson from the left by-line to the near post, clearance by Darren Pratley.
Corner taken right-footed by Sebastian Larsson from the left by-line, Marcos Alonso manages to make a clearance.
- 22:40 Foul by Titus Bramble on Marvin Sordell, free kick awarded. Direct free kick taken by Martin Petrov.
- 21:59 David Vaughan takes a shot. Save by Andy Lonergan.
- 19:28 Substitution Jack Colback on for Danny Rose.
- 18:15 Corner taken by Adam Johnson from the right by-line played to the near post, clearance made by Marcos Alonso. Sebastian Larsson
takes a inswinging corner from the left by-line played to the near post, Marcos Alonso manages to make a clearance. Craig
Gardner takes a shot. Save by Andy Lonergan.
- 17:34 Corner taken left-footed by Adam Johnson from the right by-line to the near post, clearance made by Darren Pratley.
- 15:43 Phil Bardsley produces a right-footed shot from just outside the penalty area that goes harmlessly over the target.
- 11:38 GOAL - Chung-Yong Lee:Bolton 1 - 0 Sunderland Chung-Yong Lee gets on the score sheet with a goal from just outside the area low into the middle of the goal. Bolton 1-0
- 7:12 Corner taken by Sebastian Larsson from the left by-line to the near post, Darren Pratley manages to make a clearance.
- 0:28 Free kick awarded for an unfair challenge on Marvin Sordell by Carlos Cuellar. Chung-Yong Lee takes the direct free kick.
- 0:00 The referee gets the match started.
Live text and data provided by The Press Association.