At their seventh attempt, Germany picked up a victory in the competition, but there were nervy moments during the closing stages in Kiev.
Matthias Ginter and Leon Goretzka gave the visitors a healthy 2-0 lead, with the latter nodding in from a couple of yards after Ukraine goalkeeper Bushchan practically dropped a cross onto his head.
The visitors were under pressure late on after Ruslan Malinovskiy's 76th-minute penalty gave Ukraine hope, but they held on.
Germany went ahead in the 20th minute as Ginter netted his second senior international goal, turning in a cross from Antonio Rudiger who danced around the right side of the Ukraine defence before delivering the ball low across the six-yard box.
Joshua Kimmich almost beat Bushchan from 25 yards, forcing the goalkeeper who conceded seven against France in midweek to tip over.
Germany looked sure to get another before half-time when Serge Gnabry's diving header from Ginter's clipped cross from the right arrived towards the near right corner, but Bushchan flung himself across to turn the ball wide.
Bushchan's calamitous blunder came in the 49th minute, when he made an awful mess of Lukas Klostermann's cross from the right flank, and Goretzka could not miss.
Julian Draxler should have scored a third goal for Germany 90 seconds later after Gnabry cut the ball into his path. The Paris Saint-Germain midfielder had time to set himself in the penalty area, but this time Bushchan made the save.
Ukraine's threat was minimal, but they had a lifeline when Roman Yaremchuk went down under Niklas Sule's challenge, earning a penalty.
Malinovskiy fired into the bottom-left corner, but Ukraine, backed by fervent, horn-blowing home support after the stadium was open to 30 per capacity, could not find a leveller.