Unable to upgrade from version 5.7 to 8 MySQL

0

Hi there, I am having some issues upgrading from version 5.7 to 8. From the log, I can see:

Errors: 1
Warnings: 2
Database Objects Affected: 79

However, it looks like the log below is the one error showing up which has been altered/fixed(The y, x and distance has been replaced by st_y, st_x and st_distance as suggested in the logs) but when I am running again the upgrade, it is still failing with the same error. It looks to me the changes have not taken any effect.

12) Usage of removed functions
Following DB objects make use of functions that have been removed in version 8.0. Please make sure to update them to use supported alternatives before upgrade.
More Information:
https://dev.mysql.com/doc/refman/8.0/en/mysql-nutshell.html#mysql-nutshell-removals

VIEW uses removed functions X (consider using ST_X instead), Y (consider using ST_Y instead)
 FUNCTION uses removed function DISTANCE (consider using ST_DISTANCE instead)
 PROCEDURE uses removed functions X (consider using ST_X instead), Y (consider using ST_Y instead)

Your help will be much more appreciated.

I wish to thank you in advance for your response.

已提问 3 年前2870 查看次数
1 回答
1
已接受的回答

Hi, I'm sorry it's not really an answer on why the upgrade is not succeeding (hard to say without looking into the instance specifics), but I hope this suggestion helps you achieve your objective:

If I were you, I'd

  • take a backup of the RDS MySQL 5.7 instance
  • restore it to a test 5.7 instance
  • save/dump the code of the view (and any other non-table object that is listed in the pre-patch compatibility log) for later
  • drop the object(s)
  • attempt the upgrade to 8.0
  • recreate the object(s) in 8.0
  • test that your code and application works as it should

This way, it is possible to both bypass any mistakenly flagged requirements in the pre-upgrade validation, and to make sure that the objects/code are compatible with 8.0.

Then, later, when upgrading your production instance, just do the same drop/upgrade/recreate steps.

profile pictureAWS
专家
已回答 3 年前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则