MySQL 8.3 Release Notes
如果您使用的是 MySQL 中的新功能,可以尝试使用 mysqld 带有 --skip-new
选项(禁用所有新、潜在不安全的功能)。见 B.3.3.3 节,“如果 MySQL 不断崩溃”。
如果 mysqld 不想启动,验证您没有干扰设置的 my.cnf
文件!您可以使用 mysqld --print-defaults 检查您的 my.cnf
参数,并使用 mysqld --no-defaults ... 避免使用它们。
如果 mysqld 开始吃掉 CPU 或内存,或者如果它 “hang,” 您可以使用 mysqladmin processlist status 来查找是否有人执行了一个长时间的查询。这可能是一个好主意,在某个窗口中运行 mysqladmin -i10 processlist status,如果您遇到性能问题或新客户端无法连接。
命令 mysqladmin debug 将一些锁定信息、使用的内存和查询使用情况转储到 MySQL 日志文件中。这可能有助于解决一些问题。这个命令甚至在您没有为调试编译 MySQL 的情况下也提供了一些有用的信息!
如果问题是某些表变得越来越慢,您应该尝试使用 OPTIMIZE TABLE
或 myisamchk 优化表。见 第 7 章,MySQL 服务器管理。您也应该使用 EXPLAIN
来检查慢查询。
您还应该阅读本手册中的 OS 特定部分,以了解可能是您环境独有的问题。见 第 2.1 节,“常规安装指南”。