我有一个相对较大的数据库(> 500 GB),并且yum update
昨晚运行了一个升级mysql-community-server
的 .
从那时起,MySQL 服务器一直处于“Server shutdown in progress”状态 16 小时:
# service mysqld status
Redirecting to /bin/systemctl status mysqld.service
● mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/mysqld.service.d
└─override.conf
Active: deactivating (stop-sigterm) since Mon 2020-07-20 01:18:28 CEST; 14h ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Main PID: 8318 (mysqld)
Status: "Server shutdown in progress"
CGroup: /system.slice/mysqld.service
└─8318 /usr/sbin/mysqld
另外,mysqld
现在一直在使用 300% CPU。
是否有问题,或者这只是数据库很大的结果?有什么方法可以让我了解剩下的时间,或者看看服务器实际上在做什么?
我能做些什么来加快这个过程吗?
有关信息,该服务器是具有 128GB RAM 和 NVMe 驱动器的 6 核 Xeon 驱动器,速度相当快。
有足够的可用磁盘空间和可用 RAM。
# free -m
total used free shared buff/cache available
Mem: 128889 88292 11189 2225 29407 37145
Swap: 16381 5168 11213
更新:现在已经 72 小时了。什么也没有变。
似乎它是已知的错误以及它发生的原因是因为您在升级之前没有停止数据库并且一些查询正在运行。
您可以在Percona 文章中找到更多详细信息
尝试使用命令行实用程序mytop查看发生了什么。但是您提到您无法访问数据库,请在 root 用户下尝试。如果可以备份数据库,如果你不能在更糟糕的情况下尝试使用MySQL 文档中的命令修复数据库
在这个答案中,建议它可能与您服务器上的时间设置有关。
要获取有关您可能使用的卡住进程的信息,
lsof -c mysqld
应该给您提示。与其杀死 mysqld 进程,不如尝试从 command
systemctl reboot
或重新启动服务器shutdown -r now
,不要将其从插件中拔出。