mysql - MySQL从8.0.3升级到8.0.14失败

标签 mysql mysqlupgrade

我想将 MySQL 服务器从 8.0.3 升级到 8.0.14。我遵循了以下步骤:

  1. 启动版本8.0.3的mysql容器

    $ docker run --rm --name=tmp1 -e MYSQL_ROOT_PASSWORD=root -v $PWD/Desktop/mysql-debug/:/var/lib/mysql mysql:8.0.3
    
  2. 运行容器后,

    $ docker exec -it tmp1 mysql -uroot -proot -e "select 1;"
    mysql: [Warning] Using a password on the command line interface can be insecure.
    +---+
    | 1 |
    +---+
    | 1 |
    +---+
    
    $ docker exec -it tmp1 mysql -uroot -proot -e "show databases;"
    mysql: [Warning] Using a password on the command line interface can be insecure.
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    
    $ docker exec -it tmp1 mysql -uroot -proot -e "create database abc;"
    mysql: [Warning] Using a password on the command line interface can be insecure.
    
    $ docker exec -it tmp1 mysql -uroot -proot -e "show databases;"
    mysql: [Warning] Using a password on the command line interface can be insecure.
    +--------------------+
    | Database           |
    +--------------------+
    | abc                |
    | information_schema |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    
  3. 删除前一个容器并运行版本 8.0.14 的新容器,并使用与 8.0.3 相同的数据目录($PWD/Desktop/mysql-debug/:/var/lib/mysql)

    $ docker rm -f <mysql_container_id>
    $ docker run --rm --name=tmp1 -e MYSQL_ROOT_PASSWORD=root -v $PWD/Desktop/mysql-debug/:/var/lib/mysql mysql:8.0.14
    

但是,我收到以下错误:

$ docker run --rm --name=tmp1 -e MYSQL_ROOT_PASSWORD=root -v $PWD/Desktop/mysql-debug/:/var/lib/mysql mysql:8.0.14
2020-01-21T07:38:53.346774Z 0 [Warning] [MY-011070] [Server] 'Disabling symbolic links using --skip-symbolic-links (or equivalent) is the default. Consider not using this option as it' is deprecated and will be removed in a future release.
2020-01-21T07:38:53.346846Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.14) starting as process 1
2020-01-21T07:38:55.793052Z 1 [ERROR] [MY-013326] [Server] Upgrading the server from server version '0' is not supported.
2020-01-21T07:38:55.793067Z 1 [ERROR] [MY-010334] [Server] Failed to initialize DD Storage Engine
2020-01-21T07:38:55.793257Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
2020-01-21T07:38:55.793504Z 0 [ERROR] [MY-010119] [Server] Aborting
2020-01-21T07:38:56.513813Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.14)  MySQL Community Server - GPL.

我需要做什么来克服这个问题。任何帮助将不胜感激。

最佳答案

不支持从 MySQL 8.0.3 升级到 8.0.14。我从 here 找到了有关 MySQl 升级过程的更多信息

关于mysql - MySQL从8.0.3升级到8.0.14失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59836505/

相关文章:

mysql - 为什么 codeigniter 事件记录 'LIKE' 在更新查询中不起作用?

mysql - 如何查询可用的商品

mysql - 为什么在 Node JS 中执行 Mysql 查询比直接执行 Mysql 查询慢得多?

mysql_upgrade 和 MySQL 服务 - 恶性循环

mysql - 如何获取 MYSQL 中另一个表中的项目数组及其关联值的列表?

mysql - 如何将 MySQL 5.7 更新到新的 MySQL 8.0?

php - MAMP 无法升级 mysql 数据库

mysql - 将 MySQL 5.6 升级到 5.7

php - 在 Laravel 中将 Eloquent 集合与查询合并?