UEFA Champions League: Shakhtar Donetsk 5 BATE 0
The result left Mircea Lucescu's side five points clear of their visitors, who are now the only team who can deny them Group H's final ticket to the knockout phase after Porto qualified with a 2-0 win over Athletic Bilbao.
Luiz Adriano, whose record-equalling five-goal haul inspired Shakhtar to a 7-0 victory in Borisov in the sides' meeting two weeks ago, celebrated his maiden Brazil call-up with a hand in all five goals.
Darijo Srna's deflected strike gave the Ukrainians the lead and, after BATE defender Anri Khagush was sent off en route to the dressing room at half-time, Alex Teixera's dink made it 2-0.
Having played provider, Luiz Adriano then won and converted a penalty, stabbed home from close range and completed his hat-trick with a close-range finish to take himself to nine goals for the season in the competition - four clear of Real Madrid's Karim Benzema at the head of the scoring chart.
The clean sheet was Shakhtar's first in five games at their temporary Lviv home in all competitions, while they have now scored 27 times in their last five wins.
BATE have conceded 19 times in their four group games this term – just three shy of the group-stage record shared by Dinamo Zagreb (2011-12) and Nordsjaelland (2012-13).
Oleksandr Kucher and Serhiy Kryvtsov failed to recover from injury, prompting Lucescu to hand a Champions League debut to 22-year-old centre-back Ivan Ordets, while the heart of BATE's backline was shy of imposing Egor Filipenko.
Shakhtar monopolised early possession with just Teixeira's free-kick testing Syarhey Chernik, until a slice of fortune helped them break the deadlock after 19 minutes.
Vyacheslav Shevchuk crossed into the BATE box and Luiz Adriano, despite being surrounded by opponents, managed to cushion the ball into the path of Srna, whose first-time strike cannoned off Mikhail Gordeychuk and flew into the roof of the net.
As Shakhtar threatened to double their lead, a sumptuous Douglas Costa flick then teed up Teixeira, whose effort went narrowly wide, before Taras Stepanenko sliced the ball off target from inside the box.
Chernik made two superb saves on the stroke of half-time to keep BATE in the game.
First the Belarus keeper repelled Teixeira's close-range drive, before blocking Luiz Adriano's shot and pouncing on the loose ball just ahead of the sliding striker.
The Brazilian's challenge infuriated the BATE players and a fracas broke out in the goalmouth with Khagush subsequently sent off for his continued protests.
Luiz Adriano broke several scoring records with a five-goal haul in the teams' previous meeting, but his creation of yet another chance led to Shakhtar's second goal just minutes after the restart.
Srna played the ball into the feet of the 27-year-old, who craftily let the ball run through his legs on the edge of the box, conning two defenders and allowing Texiera to latch on to it and dink the ball over Chernik.
Luiz Adriano made it 3-0 just before the hour, winning a penalty from Yevgeniy Yablonski which he fired into the bottom corner.
It was all Shakhtar thereafter, and Luiz Adriano was the man to capitalise, first getting in front of his marker to divert a Bernard cross into the net before slotting home from a late corner.
It capped another superb performance from Shakhtar's all-time leading marksman, and left his side all but through.