我有一台 Ubuntu 16.04 服务器,我想升级到 Ubuntu 20.04。它附带 MySQL 8,但我还没有准备好。我找到了有关如何删除 MySQL 8 并安装 MySQL 5.7 的示例,并且已成功完成。但是如何迁移我的数据?我有几十个数据库。
显然,当 Ubuntu 20.04 升级运行并包含 MySQL 8 时,它会升级数据以与其兼容。换入 MySQL 5.7 显然不会降级它。我尝试复制 /var/lib/mysql 内容,然后在升级/降级后将它们移回,但 MySQL 无法连接。也许我需要更有选择性?ERROR 2002 (HY000):无法通过套接字“/var/run/mysqld/mysqld.sock”连接到本地 MySQL 服务器 (2)
用户名和权限与我旧服务器中的一致。它是 mysql 用户。以下是日志中的错误信息:
2021-01-27T22:55:18.309052Z 0 [错误] [严重] InnoDB:数据字典中的表标志为 0,但文件 ./ibdata1 中的标志为 0x4000!2021-01-27 22:55:18 0x7f5e14b0d740 InnoDB:文件 ut0ut.cc 第 921 行中线程 140042050787136 中的断言失败 InnoDB:我们故意生成内存陷阱。InnoDB:向提交详细的错误报告http://bugs.mysql.com。InnoDB:如果您反复出现断言失败或崩溃,即使是在 mysqld 启动后立即出现,也可能是 InnoDB:InnoDB 表空间损坏。请参阅 InnoDB:http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html InnoDB:关于强制恢复。22:55:18 UTC - mysqld 收到信号 6;这可能是因为您遇到了错误。也可能是这个二进制文件或它所链接的库之一已损坏、构建不正确或配置错误。此错误也可能是由硬件故障引起的。尝试收集一些可帮助诊断问题的信息。由于这是一次崩溃并且肯定出了问题,因此信息收集过程可能会失败。key_buffer_size=8388608 read_buffer_size=131072 max_used_connections=0 max_threads=151 thread_count=0 connection_count=0 mysqld 可能会使用最多 key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 68196 K 字节的内存。希望没问题;如果不行,请减少等式中的某些变量。
线程指针:0x0 正在尝试回溯。您可以使用以下信息来找出 mysqld 死机的位置。如果此后没有看到任何消息,则表明出现了严重错误... stack_bottom = 0 thread_stack 0x40000 /usr/sbin/mysqld(my_print_stacktrace+0x3b)[0x56457cddebeb] /usr/sbin/mysqld(handle_fatal_signal+0x377)[0x56457c6a1977] /lib/x86_64-linux-gnu/libpthread.so.0(+0x153c0)[0x7f5e150663c0] /lib/x86_64-linux-gnu/libc.so.6(gsignal+0xcb)[0x7f5e14b5818b] /lib/x86_64-linux-gnu/libc.so.6(abort+0x12b)[0x7f5e14b37859] /usr/sbin/mysqld(+0x6aacec)[0x56457c677cec] /usr/sbin/mysqld(_ZN2ib5fatalD1Ev+0x66)[0x56457d120ed6] /usr/sbin/mysqld(+0x120025b)[0x56457d1cd25b] /usr/sbin/mysqld(+0x12007ed)[0x56457d1cd7ed] /usr/sbin/mysqld(Z6fil_ioRK9IORequestbRK9page_id_tRK11page_size_tmmPvS8+0x322)[0x56457d1d9962] /usr/sbin/mysqld(_Z13buf_read_pageRK9page_id_tRK11page_size_t+0xdd)[0x56457d18c6cd] /usr/sbin/mysqld(_Z16buf_page_get_genRK9page_id_tRK11page_size_tmP11buf_block_tmPKcmP5mtr_tb+0x475)[0x56457d15e325] /usr/sbin/mysqld(_Z31trx_rseg_get_n_undo_tablespacesPm+0x14f)[0x56457d0ff42f] /usr/sbin/mysqld(+0x10f96b8)[0x56457d0c66b8] /usr/sbin/mysqld(_Z34innobase_start_or_create_for_mysqlv+0x2e3d)[0x56457d0caa3d] /usr/sbin/mysqld(+0xfc431d)[0x56457cf9131d] /usr/sbin/mysqld(_Z24ha_initialize_handlertonP13st_plugin_int+0x4f)[0x56457c6f593f] /usr/sbin/mysqld(+0xbe68e5)[0x56457cbb38e5] /usr/sbin/mysqld(_Z40plugin_register_builtin_and_init_core_sePiPPc+0x1e5)[0x56457cbb6e05] /usr/sbin/mysqld(+0x6cccd0)[0x56457c699cd0] /usr/sbin/mysqld(_Z11mysqld_mainiPPc+0x786)[0x56457c69b3e6] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3)[0x7f5e14b390b3] /usr/sbin/mysqld(_start+0x2a)[0x56457c69169a] 手册页位于http://dev.mysql.com/doc/mysql/en/crashing.html包含可帮助您找出导致崩溃的原因的信息。