从 MariaDB 10.2 升级到 MariaDB 10.3 // docker-compose

Fri*_*jof 5 mariadb docker docker-compose

我在我的服务器上为我的 Docker MARIADB 进行了升级:

docker-compose pull
docker-compose up -d
Run Code Online (Sandbox Code Playgroud)

我之前的版本:

服务器版本:10.2.14-MariaDB-10.2.14+maria~jessie mariadb.org 二进制分发

SHOW VARIABLES LIKE "%version%";

+-------------------------+--------------------------------------+
| Variable_name           | Value                                |
+-------------------------+--------------------------------------+
| innodb_version          | 5.7.21                               |
| protocol_version        | 10                                   |
| slave_type_conversions  |                                      |
| version                 | 10.2.14-MariaDB-10.2.14+maria~jessie |
| version_comment         | mariadb.org binary distribution      |
| version_compile_machine | x86_64                               |
| version_compile_os      | debian-linux-gnu                     |
| version_malloc_library  | system                               |
| version_ssl_library     | OpenSSL 1.0.1t  3 May 2016           |
| wsrep_patch_version     | wsrep_25.23                          |
+-------------------------+--------------------------------------+
Run Code Online (Sandbox Code Playgroud)

我现在的版本: 服务器版本:10.3.9-MariaDB-1:10.3.9+maria~bionic mariadb.org 二进制分发

+---------------------------------+------------------------------------------+
| Variable_name                   | Value                                    |
+---------------------------------+------------------------------------------+
| innodb_version                  | 10.3.9                                   |
| protocol_version                | 10                                       |
| slave_type_conversions          |                                          |
| system_versioning_alter_history | ERROR                                    |
| system_versioning_asof          | DEFAULT                                  |
| version                         | 10.3.9-MariaDB-1:10.3.9+maria~bionic     |
| version_comment                 | mariadb.org binary distribution          |
| version_compile_machine         | x86_64                                   |
| version_compile_os              | debian-linux-gnu                         |
| version_malloc_library          | system                                   |
| version_source_revision         | ca26f91bcaa21933147974c823852a2e1c2e2bd7 |
| version_ssl_library             | OpenSSL 1.1.0g  2 Nov 2017               |
| wsrep_patch_version             | wsrep_25.23                              |
+---------------------------------+------------------------------------------+
Run Code Online (Sandbox Code Playgroud)

所以它似乎是从 10.2 升级到 10.3。 从 MariaDB 10.2 升级到 MariaDB 10.3

现在我在“docker-compose logs”中收到以下错误

2018-09-28 13:03:38 0 [Warning] InnoDB: Table mysql/innodb_table_stats has length mismatch in the column name table_name.  Please run mysql_upgrade
2018-09-28 13:03:38 0 [Warning] InnoDB: Table mysql/innodb_index_stats has length mismatch in the column name table_name.  Please run mysql_upgrade
Run Code Online (Sandbox Code Playgroud)

数据库按预期工作。怎么做才能摆脱这个错误?

Fri*_*jof 7

当我在写这个问题时,我能够自己解决它。如果你也面临这个问题:

  1. 连接到 docker 数据库容器:

    docker exec -u 0 -i -t CONTAINER_NAME /bin/bash

  2. 像错误消息中写的那样运行 mysql_upgrade :

    mysql_upgrade --user=root --password=xxyy --host=localhost

  3. 我重新启动了docker compose:

    码头工人组成停止

    docker-compose 开始