PolarDB MySQL版 8.0版本完全兼容MySQL 5.7,您可以將MySQL 5.7數據庫遷移到PolarDB MySQL版 8.0版本使用,數據不會丟失,但需要注意客戶端版本和PolarDB MySQL版 8.0版本的兼容性問題。

如何將MySQL 5.7遷移至PolarDB MySQL版 8.0版本請參見如下文檔:

客戶端版本

您需要將MySQL客戶端程序升級到如下版本:

  • Java:MySQL Connector/J 8.0及以上版本。
  • ODBC:MySQL Connector/ODBC 8.0及以上版本。
  • CPP:MySQL Connector/CPP 8.0及以上版本。
  • .NET:MySQL Connector/NET 8.0及以上版本。
  • Nodejs:MySQL Connector/Nodejs 8.0及以上版本。
  • Python:MySQL Connector/Python 8.0.5及以上版本。
  • Golang:go-sql-driver/mysql 1.4.0及以上版本。
  • PHP:mysqlnd 7.4及以上版本。
  • C/CPP:libmysqlclient 8.0及以上版本。

已知客戶端問題

    • 問題現象:MySQL數據庫連接異常,query_cache_size無法識別。
    • Driver版本:mysql-connector-java:5.1.42
    • 數據庫版本:mysql 8.0.13
    • 解決辦法:使用mysql-connector-java:5.1.42以上的版本,Driver版本更新日志請參見Connector/J Release Notes
    • 問題現象:mysql python driver由于COM_STMT_EXECUTE的flag沒有設置正確且沒有發送com_stmt_fetch獲取結果集,在MySQL 8.0版本上會導致無法正常獲取返回結果,在MySQL 5.6/5.7版本可以正常返回結果。
    • Driver版本:mysql-connector-2.2.9。
    • 數據庫版本:mysql 8.0.13。
    • 解決辦法:安裝8.0的python driver
    • 問題現象:在PolarDB MySQL版 8.0版本數據庫集群上執行帶有kickout的SQL語句時,會出現如下語法報錯:
      ERROR 1064 (42000): You have an error in your SQL syntax;
    • 解決辦法:建議升級PolarDB MySQL版 8.0版本集群到最新修訂版本。詳細升級操作步驟,請參見小版本升級。