首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >升级到MySQL 8后,mysql崩溃

问升级到MySQL 8后,mysql崩溃
EN

Server Fault用户
提问于 2020-04-05 10:44:16
回答 1查看 1.6K关注 0票数 0

在我们将数据库升级到MySQL 8之后,有一个查询停止工作,导致数据库崩溃。MySQL版本8.0.19,之前: 5.7

Error.log输出:

代码语言:javascript
复制
Trying to get some variables.
Some pointers may be invalid and cause the dump to abort.
Query (7f85d0240968): is an invalid pointer
Connection ID (thread ID): 11
Status: NOT_KILLED

The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains
information that should help you find out what is causing the crash.
2020-04-05T09:59:12.862055Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.19) starting as process 13111
2020-04-05T09:59:13.462707Z 0 [System] [MY-010229] [Server] Starting XA crash recovery...
2020-04-05T09:59:13.475726Z 0 [System] [MY-010232] [Server] XA crash recovery finished.
2020-04-05T09:59:13.530885Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2020-04-05T09:59:13.564557Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.19'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  MySQL Community Server - GPL.
2020-04-05T09:59:13.704704Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Socket: '/var/run/mysqld/mysqlx.sock' bind-address: '::' port: 33060
10:19:05 UTC - mysqld got signal 11 ;
Most likely, you have hit a bug, but this error can also be caused by malfunctioning hardware.
Thread pointer: 0x564c309c2060
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 7fdb00628d50 thread_stack 0x46000
/usr/sbin/mysqld(my_print_stacktrace(unsigned char const*, unsigned long)+0x3d) [0x564c2e75e78d]
/usr/sbin/mysqld(handle_fatal_signal+0x303) [0x564c2d7f8553]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x12890) [0x7fdb348cc890]
/usr/sbin/mysqld(count_field_types(SELECT_LEX*, Temp_table_param*, List<Item>&, bool, bool)+0x5e) [0x564c2d716b6e]
/usr/sbin/mysqld(JOIN::optimize()+0x10f) [0x564c2d6c063f]
/usr/sbin/mysqld(SELECT_LEX::optimize(THD*)+0xeb) [0x564c2d71501b]
/usr/sbin/mysqld(SELECT_LEX_UNIT::optimize(THD*, TABLE*)+0x6b) [0x564c2d78278b]
/usr/sbin/mysqld(SELECT_LEX::optimize(THD*)+0x143) [0x564c2d715073]
/usr/sbin/mysqld(SELECT_LEX_UNIT::optimize(THD*, TABLE*)+0x6b) [0x564c2d78278b]
/usr/sbin/mysqld(Sql_cmd_dml::execute_inner(THD*)+0x38) [0x564c2d713b38]
/usr/sbin/mysqld(Sql_cmd_dml::execute(THD*)+0x458) [0x564c2d71d438]
/usr/sbin/mysqld(mysql_execute_command(THD*, bool)+0x2811) [0x564c2d6cd741]
/usr/sbin/mysqld(Prepared_statement::execute(String*, bool)+0x7d4) [0x564c2d6f9324]
/usr/sbin/mysqld(Prepared_statement::execute_loop(String*, bool)+0xb2) [0x564c2d6fbd32]
/usr/sbin/mysqld(mysqld_stmt_execute(THD*, Prepared_statement*, bool, unsigned long, PS_PARAM*)+0x189) [0x564c2d6fd449]
/usr/sbin/mysqld(dispatch_command(THD*, COM_DATA const*, enum_server_command)+0xdef) [0x564c2d6d0c1f]
/usr/sbin/mysqld(do_command(THD*)+0x1c4) [0x564c2d6d2964]
/usr/sbin/mysqld(+0xfbd800) [0x564c2d7e9800]
/usr/sbin/mysqld(+0x244b909) [0x564c2ec77909]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x76db) [0x7fdb348c16db]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x3f) [0x7fdb32ae788f]

这是一个持续的崩溃,只有在应用程序中的一个特定操作之后才会发生,但是,我们在MySQL和/或数据库方面不是很有经验。希望你能帮忙!

EN

回答 1

Server Fault用户

发布于 2020-04-05 23:11:15

升级后运行mysql_upgrade吗?在所有表上运行“检查表”,以查看是否有任何损坏。您的服务器中有ECC内存吗?在dmesg或syslog中是否存在明显的硬件警告/错误(EDAC、MCE)?

这是合理的,你是打到一个错误。在我相当广泛的经验中,MySQL在5.6之后最好避免用于生产使用。MariaDB的车要小得多。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1010991

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档