The situation remained most critical in the eastern states of Saxony and Saxony-Anhalt, as well as parts of Bavaria.
Several cities in eastern Germany were threatened by the surging waters of the Elbe River after torrential rains put huge swaths of central Europe underwater. In Dresden, near the Czech border, several hundred people have been evacuated as water levels in the Elbe were forecast to reach up to nine metres.
"I had to sleep at my grandma's house and my mum stayed with a friend," said one boy as he helped shift sand bags in Dresden.
Some 40,000 firefighters and 5,000 troops have been mobilized and thousands of
people told to leave their homes ahead of a flood peak expected Thursday.
"We think we're well-prepared," said Dresden city spokesman Kai Schulz. "The flood preparations since the 'century floods' of 2002 are working. The historic old city has been secured with new flood barriers, which can hold back floods up to 9.40 metres.
"Still, areas to the east of the city are under water. In the past 48 hours alone, more than 1,000 people were evacuated, and there'll be more."
The widespread floods, which have turned villages into islands in seas of muddy water, were the worst since 2002 when scores of people were killed and billions of euros worth of infrastructure was damaged.
Further downriver in Magdeburg, authorities declared a state of emergency and said they expected the river, normally at two metres, to rise to almost seven metres – higher than record flooding in 2002.
In nearby Halle on the Saale River, much of the city centre was already flooded. Troops were frantically filling sandbags to reinforce a saturated dyke as the Elbe tributary rose above eight metres. "It's the highest level in 400 years," said a city spokesman.
In southern Germany, where the Danube has burst its banks, the Bavarian rural district of Deggendorf was cut off from the outside world, and 6,000 people had been evacuated.
"We have a 90-year-old woman who can't really walk anymore after she had an operation recently. But she has been rescued by fire fighters," said an emergency official on private television.
Residents of the Bavarian city of Passau, which has seen the worst flooding in 500 years, were relieved to see the Danube River drop three metres overnight. However, the old town remained cut off and many roads along the river bank were still impassable.
"Slowly we're exiting a catastrophe and returning to just flooding," said a city spokesman.
On Tuesday, German Chancellor Angela Merkel pledged €100 million ($130 million) in emergency aid for flood-ravaged areas.
At least two people have died in Germany from the flooding, which has affected much of central Europe.