Bug #93156 | can not upgrade from MySQL 8.0.11 to 8.0.13 | ||
---|---|---|---|
Submitted: | 11 Nov 2018 13:45 | Modified: | 30 Nov 2018 15:11 |
Reporter: | Ye Jinrong | Email Updates: | |
Status: | Duplicate | Impact on me: | |
Category: | MySQL Server: Data Dictionary | Severity: | S3 (Non-critical) |
Version: | 8.0.13 | OS: | Any |
Assigned to: | CPU Architecture: | Any |
[11 Nov 2018 13:45]
Ye Jinrong
[11 Nov 2018 19:47]
Giuseppe Maxia
I could not reproduce this problem. Here's my attempt: $ dbdeployer deploy single 8.0.11 Database installed in $HOME/sandboxes/msb_8_0_11 run 'dbdeployer usage single' for basic instructions' . sandbox server started $ dbdeployer deploy single 8.0.13 Database installed in $HOME/sandboxes/msb_8_0_13 run 'dbdeployer usage single' for basic instructions' . sandbox server started $ dbdeployer admin upgrade msb_8_0_11 msb_8_0_13 stop /Users/gmax/sandboxes/msb_8_0_11 stop /Users/gmax/sandboxes/msb_8_0_13 Data directory msb_8_0_11/data moved to msb_8_0_13/data .. sandbox server started Checking if update is needed. Checking server version. Running queries to upgrade MySQL server. Upgrading system table data. Checking system database. mysql.columns_priv OK mysql.component OK mysql.db OK mysql.default_roles OK mysql.engine_cost OK mysql.func OK mysql.general_log OK mysql.global_grants OK mysql.gtid_executed OK mysql.help_category OK mysql.help_keyword OK mysql.help_relation OK mysql.help_topic OK mysql.innodb_index_stats OK mysql.innodb_table_stats OK mysql.password_history OK mysql.plugin OK mysql.procs_priv OK mysql.proxies_priv OK mysql.role_edges OK mysql.server_cost OK mysql.servers OK mysql.slave_master_info OK mysql.slave_relay_log_info OK mysql.slave_worker_info OK mysql.slow_log OK mysql.tables_priv OK mysql.time_zone OK mysql.time_zone_leap_second OK mysql.time_zone_name OK mysql.time_zone_transition OK mysql.time_zone_transition_type OK mysql.user OK The sys schema is already up to date (version 2.0.0). Checking databases. sys.sys_config OK Upgrade process completed successfully. Checking if update is needed. The data directory from msb_8_0_13/data is preserved in msb_8_0_13/data-msb_8_0_13 The data directory from msb_8_0_11/data is now used in msb_8_0_13/data msb_8_0_11 is not operational and can be deleted The error log (migrated from the previous version, as the whole data directory was used by 8.0.13) does not say anything bad after the upgrade.
[12 Nov 2018 6:23]
MySQL Verification Team
Hello Ye Jinrong, Thank you for the report. This is duplicate of Bug #93147, please see Bug #93147. regards, Umesh
[29 Nov 2018 20:52]
Susan Koerner
Hello Ye Jinrong, I wanted to add a few notes to the comments for this bug, and request your feedback. Based on the odd messages in the mysqld log file, I think that there was a mismatch in the binaries used to start mysqld and the setting for basedir. From this output, it looks as if either the mysqld command or the cnf file had the following setting: basedir=/Volumes/DATA/apps/mysql-8.0.11-macos10.13-x86_64 But, the binary used to start the server was: /Volumes/DATA/apps/mysql-8.0.13-macos10.14-x86_64/bin/mysqld This is noted in the messages in the mysqld log that you included in the bug report: 2018-11-10T15:37:42.611063Z 0 [Note] [MY-010949] [Server] Basedir set to /Volumes/DATA/apps/mysql-8.0.11-macos10.13-x86_64/. 2018-11-10T15:37:42.611095Z 0 [System] [MY-010116] [Server] /Volumes/DATA/apps/mysql-8.0.13-macos10.14-x86_64/bin/mysqld (mysqld 8.0.13) starting as process 72998 2018-11-10T15:37:42.612171Z 0 [ERROR] [MY-010340] [Server] Error message file '/Volumes/DATA/apps/mysql-8.0.11-macos10.13-x86_64/share/english/errmsg.sys' had only 4512 error messages, but it should contain at least 4640 error messages. Check that the above file is the right version for this program! [...] 2018-11-10T15:37:43.933698Z 1 [Note] [MY-012976] [InnoDB] 8.0.13 started; log sequence number 2422046587 2018-11-10T15:37:43.943188Z 1 [Note] [MY-011090] [Server] Data dictionary upgrading from version '80011' to '80013'. 2018-11-10T15:37:44.038625Z 1 [Note] [MY-012357] [InnoDB] Reading DD tablespace files [...] This type of mismatch can causes some really odd behavior and very odd messages in the mysqld log. There is a valid issue related to the error error message that was noted in the bug report: 2018-11-10T15:37:44.611058Z 1 [ERROR] [MY-013178] [Server] Execution of server-side SQL statement 'INSERT INTO tables SELECT *, 0 FROM mysql.tables' failed with error code = 1292, error message = 'Incorrect datetime value: '0000-00-00 00:00:00' for column 'created' at row 355'. This issue is covered in the bug: https://bugs.mysql.com/bug.php?id=93147 -> Upgrade to 8.0.13 from 8.0.11 fails Please confirm that my suspicion is either the situation, or somewhat close to what occurred. I want to be sure that you have an explanation for the very odd messages that is not as a result of bug 93147. Once confirmed, the status of this bug will be returned to duplicate of 93147. Thank you - Susan
[30 Nov 2018 2:46]
Ye Jinrong
Hi Susan Koerner, Sorry about the mismatch message. The reason is that, i start mysqld(MySQL 8.0.13) by a shell script like this: #!/bin/bash . ~/.bash_profile cd /Volumes/DATA/apps/mysql-8.0.13-macos10.14-x86_64 ./bin/mysqld --defaults-file=/Volumes/DATA/mysql/mysql8013/my.cnf & but i forgot to change basedir options on my.cnf, it's old value is: basedir = /Volumes/DATA/apps/mysql-8.0.11-macos10.13-x86_64 i will re-install 8.0.11 and try upgrade to 8.0.13 once more. thanks much.
[30 Nov 2018 5:40]
Ye Jinrong
Hi Susan Koerner, I am sure can not upgrade from 8.0.11 to 8.0.13, and raise the same error messages: 2018-11-30T05:26:22.395725Z 0 [System] [MY-010116] [Server] /Volumes/DATA/apps/mysql-8.0.13-macos10.14-x86_64/bin/mysqld (mysqld 8.0.13) starting as process 38563 2018-11-30T05:26:22.399766Z 0 [Warning] [MY-010159] [Server] Setting lower_case_table_names=2 because file system for /Volumes/DATA/mysql/mysql8011/ is case insensitive 2018-11-30T05:26:23.291750Z 1 [ERROR] [MY-013178] [Server] Execution of server-side SQL statement 'INSERT INTO tables SELECT *, 0 FROM mysql.tables' failed with error code = 1292, error message = 'Incorrect datetime value: '0000-00-00 00:00:00' for column 'created' at row 356'. 2018-11-30T05:26:23.305457Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed. 2018-11-30T05:26:23.305493Z 0 [ERROR] [MY-010119] [Server] Aborting 2018-11-30T05:26:24.254540Z 0 [System] [MY-010910] [Server] /Volumes/DATA/apps/mysql-8.0.13-macos10.14-x86_64/bin/mysqld: Shutdown complete (mysqld 8.0.13) MySQL Community Server - GPL. 1. initial mysql 8.0.11 $ ./bin/mysqld --no-defaults --datadir=/Volumes/DATA/mysql/mysql8011 --initialize-insecure 2. start mysql 8.0.11 and check it's version $ pwd /Volumes/DATA/apps/mysql-8.0.11-macos10.13-x86_64 $ ./bin/mysqld --no-defaults --datadir=/Volumes/DATA/mysql/mysql8011 --port=3308 --socket=mysql.sock --log-error=error.txt --mysqlx-port=33080 --mysqlx-socket=mysqlx.sock $ mysqladmin -Smysql.sock ver mysqladmin Ver 8.0.13 for macos10.14 on x86_64 (MySQL Community Server - GPL) ... Server version 8.0.11 3. import dumpfile $ mysql -Smysql.sock -f < ../yejr.sql 4. shutdown mysql 8.0.11 $ mysqladmin -Smysql.sock shut 5. start mysql 8.0.13 with same datadir $ pwd /Volumes/DATA/apps/mysql-8.0.13-macos10.14-x86_64 $ ./bin/mysqld --no-defaults --datadir=/Volumes/DATA/mysql/mysql8011 --port=3308 --socket=mysql.sock --log-error=error.txt --mysqlx-port=33080 --mysqlx-socket=mysqlx.sock raise error, startup fail.
[30 Nov 2018 15:11]
Susan Koerner
Hello Ye Jinrong - I completely understand and agree that the following error causes you to not be able to upgrade: 2018-11-30T05:26:23.291750Z 1 [ERROR] [MY-013178] [Server] Execution of server-side SQL statement 'INSERT INTO tables SELECT *, 0 FROM mysql.tables' failed with error code = 1292, error message = 'Incorrect datetime value: '0000-00-00 00:00:00' for column 'created' at row 356'. This error has already been raised and is being tracked in the following bug: https://bugs.mysql.com/bug.php?id=93147 -> Upgrade to 8.0.13 from 8.0.11 fails As a workaround, you can upgrade from 8.0.11 -> 8.0.12 -> 8.0.13. This is only a problem between 8.0.11 -> 8.0.13. In my comments to you, I was hoping to help to explain why you received all the other error messages that were in the log. Thanks so much for confirming that there was a mismatch between the mysqld binary and the basedir specified in your original report. I will close this bug as a duplicate of bug#93147. Have a great day - Susan