Schmeichel was unattached after terminating his contract with French Ligue 1 side OGC Nice on transfer deadline day.
The 36-year-old made 46 appearances across all competitions for Nice last season after joining from Leicester City but has lost his starting spot to Marcin Bulka this term.
Speaking to the official Anderlecht website, he said: "After speaking with [Sports CEO] Jesper [Fredbeg] and [Manager] Brian [Riemer], I was very excited about the project that they’re putting in place.
"Anderlecht is just a massive club and former teammates from different places have always talked so highly and warmly of this place. It was something that I really wanted to become part of."
Schmeichel made 478 appearances for Leicester City, helping the club win the Championship title in the 2013/2014 season as well as an unlikely Premier League triumph in the 2015/2016 season.
Schmeichel, son of Manchester United great Peter, also captained the Foxes to FA Cup success over Chelsea in 2021.
He has 93 caps for the Denmark national team.
Anderlecht are currently second on the Belgium Pro League table after picking up four wins from their opening six games.