As many as 22 streets in two districts of Kryvyi Rih are affected, city head Oleksandr Vilkul warned on Wednesday, the BBC reported.
Officials said a water flow of 100 cubic metres per second was gushing from breaches, and water levels in the Inhulets river were rising dangerously.
Ukraine said the strike was revenge by Russia for its recent counter-attack.
President Volodymyr Zelensky described Russia as a “terrorist state”.
“You are weaklings who fight civilians,” Zelensky, who was born in Kryvyi Rih, said in his late night address on Wednesday. Zelensky said the reservoir had “no military value at all”.
“Scoundrels who, having escaped from the battlefield, are trying to do harm from somewhere far away,” he added.
This was an apparent reference to Ukraine’s recent military successes in a swift counter-offensive in the country’s north-eastern Kharkiv region. It has seen Ukraine’s army reclaim swathes of occupied territory, forcing Russian troops to retreat, the BBC said.
The precise scale of Ukraine’s gains has not been verified by the BBC.
Water supplies have been affected by the attack, officials say – and about 600,000 people are now at risk of flooding in the centre and another district of the city, according to Kyrylo Tymoshenko, deputy head of the president’s office.
Moscow has not publicly commented on Wednesday’s reported missile strikes.
Russia’s military had earlier admitted hitting energy-generating targets that caused widespread blackouts affecting millions of people in eastern Ukraine last weekend.