The 33-year-old suspect already has a police record for theft and violence and appears to suffer from “psychiatric problems”, Munich police chief Hubertus Andrae told a news conference.
He expressed confidence that they had detained the perpetrator of the attacks and that there was no longer any threat to the public.
Andrae said the man has so far refused to speak to police and his motive remains unknown.
But “absolutely no element” of the investigation leads police to believe it was a politically or religiously-motivated act of terror, he said.
The man attacked people with his knife at random, causing light injuries to eight people: a 12-year-old boy, six men and one woman, said Andrae.
Six of the people were Germans, one Italian and one Romanian.
Most of the injuries were superficial cuts.
The attacks occurred in six separate locations near Rosenheimer Platz in the eastern part of the city centre at around 0630 GMT. The suspect then fled by bike.
During the several hours he remained at large there was a palatable sense of panic in the city, with police urging residents to stay indoors.
In July 2016, a German-Iranian teenager who police say was obsessed with mass murderers, shot dead nine people at a Munich shopping mall before turning the gun on himself.