Stand-in centre back Shkodran Mustafi headed his first goal for Germany and Bastian Schweinsteiger scored in stoppage time as the world champions survived several scares to beat Ukraine 2-0 in their opening Euro 2016 Group C match on Sunday.
Mustafi, who started in the absence of regular centre back Mats Hummels, rifled home a header after 19 minutes to give Germany the lead, which was not extended until Schweinsteiger, a 90th-minute substitute, swept home from close range.
Germany, bidding for a fourth Euro triumph but first since 1996, dominated possession, but also relied on three top saves from keeper Manuel Neuer and a goal-line clearance by Jerome Boateng to come out on top.
Ukraine, playing in their second European championship, harried and hustled their opponents and their tight defence offered few clear sights of goal to the Germans.
Yet lone striker Roman Zozulya was unable to offer much threat, except at the very start and in the closing stages as Ukraine pushed on in search of an equaliser.
In a breakneck first half, Ukraine's Yevhen Konoplyanka forced Germany keeper Neuer to make a flying save in the fourth minute before the Germans steadily took control, with Toni Kroos orchestrating most of their attacks.
It was from his free kick, that Mustafi, who last featured for Germany in March and only made the side because Hummels was recovering from a muscle injury, leapt behind Serhiy Sydorchuk to power in a header.
Ten minutes later Sami Khedira had the chance to double Germany's lead as Kroos floated a ball beyond the defence, but he shot straight at the keeper.
By then though, the Ukrainians had woken up and, driving their full backs higher up the pitch, forced Neuer to punch over a strong header from Yevhen Khacheridi.
Boateng was then forced into a dramatic clearance, having first lost the ball before hacking it clear while back-pedalling into the net. Lone striker Zozulya also had an effort disallowed for offside as Germany hung on until halftime.
Ukraine posed less of a threat in the second half, relying on hopeful long balls forward, while their keeper Andriy Pyatov was forced into action to save a long-range effort from Khedira, a low drive from Thomas Mueller and from Mesut Ozil, when he was through on goal.
Germany suffered one final fright when Mustafi headed back over Neuer's head, leaving the goalkeeper to scramble back towards his own net, while appearing to body check substitute striker Yevhen Seleznyov in the process.
Then, in the final seconds, with Ukraine pushing up, Germany countered and Schweinsteiger slammed in an Ozil cross to score.
The result extended Germany's unbeaten run against Ukraine to six matches and maintained their record of never having lost their opening match in a European Championship.
Germany will play joint group leaders Poland at the Stade de France on Thursday, when Ukraine take on Northern Ireland in Lyon.
Several hours before the match, German and Ukrainian supporters scuffled briefly in the centre of Lille, though police quickly brought the situation under control.