Mayor Christian Estrosi, who described the attack as terrorism, tweeted it happened in or near Notre Dame church, the largest in the city.
He said “the Islamo-fascist assailant didn’t stop shouting Allahu Akbhar even under medication”.
One of those killed inside the church was believed to be the church warden, he said, adding a woman tried to escape from inside the church and fled into a bar opposite the 19th century neo-Gothic building.
Police officers armed with automatic weapons put up a security cordon around the church, which is on the city’s main shopping thoroughfare.
A video uploaded by an onlooker on Twitter shows the chaos on the streets immediately after the attacker charged.
The attack comes amid brewing anti-Macron waves across the globe.
French President Emmanuel Macron ordered tough crackdown on radical Islam following the beheading of a schoolteacher on the streets of Paris earlier this month by a Muslim immigrant terrorist because he showed cartoons of Prophet Mohammed to his pupils during a lesson on freedom of expression.