This article is more than
2 year oldUkraine's Infrastructure Minister, Oleksandr Kubrakov, said technical work to prepare for shipments was going ahead despite the apparent breach.
But President Volodymr Zelensky said the attack proved Russia would find ways not to implement the deal.
Under Friday's deal, Russia agreed not to target ports while grain shipments were in transit.
In a post to social media, the Ukrainian military's southern command centre said two Kalibr missiles had hit the port, while two more had been shot down by air defence systems.
However, it also said the strike, which has been widely condemned, caused no significant damage.
The Turkish government, which brokered the deal, said Russian officials had denied responsibility.
"In our contact with Russia, the Russians told us that they had absolutely nothing to do with this attack and that they were examining the issue very closely and in detail," said Defence Minister Hulusai Akar.
The Russian ministry of defence said it had used high-precision missiles to destroy what it called a depot housing Harpoon anti-ship missiles provided by Nato.
In another development, Hungarian Prime Minister Viktor Orban said Ukraine could not win against Russia.
Speaking at an international conference of conservatives, he said the war could only be ended by peace talks between Washington and Moscow.
"A new strategy is needed, which should focus on peace negotiations instead of trying to win the war," said Mr Orban, whose views on the conflict are often at odds with those of other EU leaders.
The Turkish government, which brokered the deal, said Russian officials had denied responsibility.
"In our contact with Russia, the Russians told us that they had absolutely nothing to do with this attack and that they were examining the issue very closely and in detail," said Defence Minister Hulusai Akar.
The Russian ministry of defence said it had used high-precision missiles to destroy what it called a depot housing Harpoon anti-ship missiles provided by Nato.
In another development, Hungarian Prime Minister Viktor Orban said Ukraine could not win against Russia.
Speaking at an international conference of conservatives, he said the war could only be ended by peace talks between Washington and Moscow.
"A new strategy is needed, which should focus on peace negotiations instead of trying to win the war," said Mr Orban, whose views on the conflict are often at odds with those of other EU leaders.
On Friday, officials from Kyiv and Moscow signed a deal to allow millions of tonnes of grain trapped in Ukraine to be exported.
The agreement was hailed as a "beacon of hope" by the UN after months of fighting.
The deal - which took two months to reach - is set to last for 120 days, with a co-ordination and monitoring centre to be established in Istanbul, staffed by UN, Turkish, Russian and Ukrainian officials. It can be renewed if both parties agree.
EU foreign affairs chief Josep Borrell said the attack on Odesa had shown Russia's "total disregard" for international law.
"Striking a target crucial for grain export a day after the signature of Istanbul agreements is particularly reprehensible," he tweeted, adding that the EU "strongly condemns" the attack.
UN Secretary General Antonio Guterres unequivocally condemned the attack, saying that full implementation of the grain deal was imperative.
The BBC's Paul Adams in Kyiv says it is tempting to see the attack on Odesa as an attempt to wreck the grain deal.
But our correspondent says that seems to run counter to remarks by Russian Defence Minister Sergei Shoigu that Russia's responsibilities were clearly set out.
In the latest fighting on the ground, British defence officials said Russian troops in the Kherson region risked being cut off from their supply lines by Ukrainian forces.
Ukrainian forces have used new long-range US supplied missile systems to target the Antonovsky Bridge in Kherson.
If the bridge were to be destroyed, Russian supply lines would be severely stretched.