Manchester City struggled from two goals down to secure a 3-2 victory in Pep Guardiola's first clash against former club Bayern Munich on Saturday in the International Champions Cup.
Mahrez limped off in the 26th minute, but the Algerian winger seemed to hurt his ankle in a challenge from US defender Chris Richards in the fourth minute.
The opener came in the 15th minute, when they flooded the right wing, freeing up space for Rafinha to float in a cross that Shabani forcefully headed home.
Robben doubled their lead eight minutes later when he raced onto Franck Ribery's clever chipped pass, and the winger clipped the ball over the onrushing Claudio Bravo.
He came close to the second goal with a fierce, low drive that Bravo stretched to keep out before City scored a goal back in first-half injury time with a smart run and finish into the corner from Silva.
They were level five minutes after the break when Sven Ulreich feebly parried Phil Foden's curling effort straight into the path of Lukas Nmecha.
Man City took the lead in the 70th minute, with 17-year-old former Barca midfielder Adrian Bernabe claiming the assist for Silva's second as he dribbled Ulreich at his near post with a whipped low shot.
This article was most recently revised and updated 3 years ago