REUTERS

The Germans, eyeing their fourth Euro title and their first since 1996, opened the scoring when central defender Mustafi, starting in place of the injured Mats Hummels, rose high to head in a pinpoint Toni Kroos free kick in the 19th minute, Reuters wrote.

Joachim Loew's men, who also lost central defender Antonio Ruediger to injury earlier this week, were far from convincing and had keeper Manuel Neuer to thank for producing a string of superb one-handed saves in the first half.

Substitute Schweinsteiger then made sure of victory when he scored from close range late on.

Видео дня

Germany and Ukraine put on a wildly entertaining match that was much closer than the scoreline may have looked, SB Nation soccer contributor Conor Dowley commented on the game.

Read alsoOfficial: Ukraine presents squad for UEFA EURO 2016"The match got started in delightful fashion, with both Germany and Ukraine flying high, playing open and fast-paced football as each side sought an early goal. With Germany's highly talented midfielders on one side and Ukraine's wonderful wingers on the other, it made for an entertaining opening to the match, with both sides playing at a high level that they maintained for much of the game," he wrote in his artiled titled "3 things we learned as Germany held on to beat Ukraine 2-0 in Euro 2016," published on June 12.

"After several close calls at both ends of the pitch, the opening goal would actually come from a set piece, with Toni Kroos serving up a free kick to the far post that only Shkodran Mustafi could reach, and the defender headed home for his first senior international goal. It gave Germany an early advantage, but it wasn't one that would be easy to hold," he continued.

"The second half saw Germany try to take more control of the match, aiming to hold even more possession and slow the pace in an effort to minimize the impact of Ukraine's highly effective counter-attack. That helped create more quality scoring chances for Germany as well – though Ukraine's defense held up well and they still had their chances going forward, especially after bringing on exciting young attacker Oleksandr Zinchenko as a substitute. Ukraine ramped up the pressure late, managing to seriously unsettle Germany's defense at times and forcing more heroics from Manuel Neuer and Boateng in the late minutes of the match," the article writes.

"The result, paired with Poland's win over Northern Ireland earlier in the day, leaves both teams in need of a win. Germany will face Poland knowing that a win will all but punch their ticket to the Euro 2016 knockout rounds, while Ukraine face Northern Ireland needing a win just to give themselves a chance of making it there themselves. This is going to be an exciting group to watch, and this match set a wonderful tone for it," he wrote.

Germany: Manuel Neuer; Benedikt Hoewedes, Jerome Boateng, Shkodran Mustafi, Jonas Hector; Sami Khedira, Toni Kroos; Thomas Mueller, Mesut Ozil, Julian Draxler (Andre Schürrle 78'); Mario Goetze (Bastian Schweinsteiger 89')

Goals: Mustafi (19'), Schweinsteiger (90'+1)

Ukraine: Andriy Pyatov; Artem Fedetskyi, Yevhen Khacheridi, Yaroslav Rakitskyi, Vyacheslav Shevchuk; Serhiy Sydorchuk, Taras Stepanenko; Andriy Yarmolenko, Viktor Kovalenko (Oleksandr Zinchenko 74'), Yevhen Konoplyanka; Roman Zozulya (Yevhen Seleznyov 66')

Goals: None