Match ends, Shakhtar Donetsk 2, Roma 1.
Shakhtar Donetsk 2-1 Roma
Shakhtar Donetsk came from behind to beat Roma in the Champions League last-16 first leg thanks to a stunning free-kick by Brazil midfielder Fred.
Argentine striker Facundo Ferreyra, who did not play a minute for Newcastle during a season-long loan in 2014-15, struck to cancel out the opener by Roma's exciting Turkish winger Cengiz Under.
Then Fred, 24, who has been linked with a move to Premier League leaders Manchester City, curled his free-kick over the wall and into the top corner.
Shakhtar, who had defender Serhiy Kryvtsov stretchered off before half-time, travel to Rome for the second leg on Tuesday, 13 March (19:45 GMT).
Eusebio di Francesco's Roma, who are third in Serie A, impressed in the first half with former Manchester City striker Edin Dzeko linking up well with Under.
But Shakhtar, who have now won 12 of 15 games in Kharkiv where they play due to conflict in their eastern Ukraine home, were only denied a bigger lead by Roma goalkeeper Alisson Becker, who thwarted Marlos, Taison and Ferreyra in added time.
Shakhtar's Samba Boys shine
It was -9C in Kharkiv but Shakhtar's Samba contingent shone like it was a balmy night in Sao Paulo.
Skipper Taison, playmaker Bernard, highly rated midfielder Fred and over-lapping full-back Ismaily - not to mention Brazil-born Ukraine international Marlos - played a big part in the hosts' win - registering 10 attempts on goal between them.
The reigning Ukrainian Premier League champions have a proud heritage of Brazilian imports; Fred is their 14th different player from that country to score in the Champions League. Only Porto with 21 have had more scorers from the South American nation in the competition's history.
Fred has made headlines in England recently with those strong rumours that Pep Guardiola covets his signature and his free-kick will ensure more attention.
But it was 5ft 5in playmaker Bernard who barely put a foot wrong, with 90% passing accuracy and more touches (73) than any team-mate.
Roma had hoped their own midfielder Radja Nainggolan would have an impact, but he struggled, only touching the ball 28 times - 45 times fewer than Bernard - and was subbed on 85 minutes.
The Italians had their own Brazilian saviour in shot-stopper Alisson, who made the key saves that mean they still have a chance to progress in Rome with an away goal in their favour.
Man of the match - Bernard (Shakhtar Donetsk)
What they said
Shakhtar coach Paulo Fonseca said: "We didn't actually start the game too badly, and even created a good chance, but didn't have a player to poke the ball in. Later there was a problem with our positioning. Roma were aggressive while our lines were stretched. We sorted this after the break and that helped us win.
"The team performed well in the second half. It wasn't easy to keep up that pace after a long winter break. The only reason we didn't win by a bigger margin was a brilliant display from Roma's keeper."
Roma coach Eusebio Di Francesco: "My team has everything it takes to play 90 minutes at a high level so the mistakes we made are mental. I told the team to play the second half the way we played the first, but what I saw on the pitch is that team was happy to defend. We need to work on that.
"My team lacks the ability to maintain momentum and perform in spite of difficulties. We lost our concentration at 1-1. Shakhtar are a great side. We'll do everything to turn this around, but it'll be very difficult."
No place like adopted home for Shakhtar - the stats
- Shakhtar have won all four of their home games in the tournament this season, their best such run since their last win over Roma in March 2011 (five straight wins). Indeed, the only other side to have won four home matches in this season's competition are Bayern Munich.
- All three of Shakhtar Donetsk's knockout stage wins in the Champions League have been against Roma. Indeed, three of Roma's last five defeats in the competition's round of 16 have been against the Ukrainian side.
- Shakhtar have now found the net at least twice in six consecutive home Champions League games - the joint-longest current streak of scoring 2+ goals in successive games on home soil in the competition (along with PSG).
- Roma have failed to keep a clean sheet in 25 straight away Champions League games. Only Celtic (30 games in December 2016) have ever been on a longer such run in the competition.
- Cengiz Under (20 years, 222 days) is Roma's second youngest Champions League goalscorer after Antonio Cassano in October 2002 against Genk (20 years, 82 days) and the youngest Turkish scorer in the competition, surpassing Hakan Calhanoglu (20 years, 235 days) when he scored for Bayer Leverkusen against Benfica in October 2014.
- Edin Dzeko has been directly involved in five goals in the Champions League this season (three goals, two assists), his best return in a single campaign in the competition.
Roma host AC Milan in Serie A on Sunday, 25 February (19:45 GMT), while Shakhtar host Zirka on the same day (15:00 GMT).
- 4KrivtsovSubstituted forOrdetsat 45+3'minutes
- 31dos Santos
- 7TaisonBooked at 90mins
- 10BernardSubstituted forKovalenkoat 90+2'minutes
- 19FerreyraBooked at 80mins
- 24FlorenziSubstituted forda Silva Peresat 72'minutes
- 16De Rossi
- 17ÜnderSubstituted forSantos da Silvaat 71'minutes
- 4NainggolanSubstituted forDefrelat 83'minutes
- 8PerottiBooked at 90mins
- 5Nunes Jesus
- 25da Silva Peres
- 30Santos da Silva
- William Collum
- Shots on Target
Second Half ends, Shakhtar Donetsk 2, Roma 1.
Foul by Marlos (Shakhtar Donetsk).
Gerson (Roma) wins a free kick in the defensive half.
Corner, Shakhtar Donetsk. Conceded by Bruno Peres.
Attempt blocked. Facundo Ferreyra (Shakhtar Donetsk) left footed shot from very close range is blocked. Assisted by Viktor Kovalenko.
Substitution, Shakhtar Donetsk. Viktor Kovalenko replaces Bernard.
Taison (Shakhtar Donetsk) is shown the yellow card.
Diego Perotti (Roma) is shown the yellow card.
Taison (Shakhtar Donetsk) wins a free kick on the right wing.
Foul by Diego Perotti (Roma).
Attempt blocked. Marlos (Shakhtar Donetsk) left footed shot from the centre of the box is blocked. Assisted by Facundo Ferreyra.
Attempt saved. Gerson (Roma) left footed shot from outside the box is saved in the bottom right corner. Assisted by Diego Perotti.
Ivan Ordets (Shakhtar Donetsk) wins a free kick in the defensive half.
Foul by Edin Dzeko (Roma).
Taison (Shakhtar Donetsk) wins a free kick in the defensive half.
Foul by Federico Fazio (Roma).
Substitution, Roma. Gregoire Defrel replaces Radja Nainggolan.
Attempt saved. Taras Stepanenko (Shakhtar Donetsk) left footed shot from outside the box is saved in the bottom left corner.
Attempt blocked. Facundo Ferreyra (Shakhtar Donetsk) right footed shot from the left side of the box is blocked. Assisted by Marlos.
Corner, Shakhtar Donetsk. Conceded by Kostas Manolas.
Facundo Ferreyra (Shakhtar Donetsk) is shown the yellow card for a bad foul.
Foul by Facundo Ferreyra (Shakhtar Donetsk).
Daniele De Rossi (Roma) wins a free kick in the defensive half.
Foul by Fred (Shakhtar Donetsk).
Diego Perotti (Roma) wins a free kick in the attacking half.
Foul by Ismaily (Shakhtar Donetsk).
Gerson (Roma) wins a free kick on the right wing.
Foul by Taison (Shakhtar Donetsk).
Daniele De Rossi (Roma) wins a free kick in the attacking half.
Attempt saved. Gerson (Roma) left footed shot from outside the box is saved in the top right corner.
Substitution, Roma. Bruno Peres replaces Alessandro Florenzi.
Substitution, Roma. Gerson replaces Cengiz Ünder.
Goal! Shakhtar Donetsk 2, Roma 1. Fred (Shakhtar Donetsk) from a free kick with a left footed shot to the top right corner.
Marlos (Shakhtar Donetsk) wins a free kick in the attacking half.
Foul by Kevin Strootman (Roma).
Corner, Shakhtar Donetsk. Conceded by Alessandro Florenzi.
Attempt missed. Federico Fazio (Roma) header from the centre of the box misses to the right. Assisted by Aleksandar Kolarov with a cross following a corner.
Corner, Roma. Conceded by Bogdan Butko.
Attempt saved. Radja Nainggolan (Roma) header from the centre of the box is saved in the centre of the goal. Assisted by Aleksandar Kolarov with a cross.