mysql5.7无法启动报错处理无日志

注意,本篇适用于mysql安装启动异常,而不是数据库本身的异常。所以在/var/log/mysql/下没有日志。

journalctl -u mysqld -n 15 查看启动日志,提示缺少共享库libaio.so.1

复制代码
Mar 26 16:47:01 iZbp19v3umnf1z4en78hnlZ systemd[1]: Starting MySQL Server...
Mar 26 16:47:01 iZbp19v3umnf1z4en78hnlZ mysqld_pre_systemd[2179]: /usr/sbin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
Mar 26 16:47:01 iZbp19v3umnf1z4en78hnlZ systemd[1]: mysqld.service: control process exited, code=exited status=127
Mar 26 16:47:01 iZbp19v3umnf1z4en78hnlZ systemd[1]: Failed to start MySQL Server.
Mar 26 16:47:01 iZbp19v3umnf1z4en78hnlZ systemd[1]: Unit mysqld.service entered failed state.
Mar 26 16:47:01 iZbp19v3umnf1z4en78hnlZ systemd[1]: mysqld.service failed.
Mar 26 16:47:02 iZbp19v3umnf1z4en78hnlZ systemd[1]: mysqld.service holdoff time over, scheduling restart.
Mar 26 16:47:02 iZbp19v3umnf1z4en78hnlZ systemd[1]: Stopped MySQL Server.

解决方法,安装libaio

复制代码
#解决方法centos,其余系统自行查找
yum install libaio -y

#查看库位置,并写入profile
[root@iZbp19v3umnf1z4en78hnlZ mysql]# find / -name libaio.so.1
/usr/lib64/libaio.so.1

vi /etc/profile

#尾部新增一行
export LD_LIBRARY_PATHfile=$LD_LIBRARY_PATH:/usr/lib64/

source /etc/profile

报错,看下日志journalctl -u mysqld -n 15,数据目录中已经存在一些文件或数据库,阻止了初始化过程,删除/var/lib/mysql/*目录下的内容

复制代码
Mar 26 23:24:12 iZbp19v3umnf1z4en78hnlZ systemd[1]: Starting MySQL Server...
Mar 26 23:24:12 iZbp19v3umnf1z4en78hnlZ mysqld_pre_systemd[14057]: 2025-03-26T15:24:12.473997Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defa
Mar 26 23:24:12 iZbp19v3umnf1z4en78hnlZ mysqld_pre_systemd[14057]: 2025-03-26T15:24:12.475616Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.
Mar 26 23:24:12 iZbp19v3umnf1z4en78hnlZ mysqld_pre_systemd[14057]: 2025-03-26T15:24:12.475654Z 0 [ERROR] Aborting
Mar 26 23:24:12 iZbp19v3umnf1z4en78hnlZ mysqld[14081]: Initialization of mysqld failed: 0
Mar 26 23:24:12 iZbp19v3umnf1z4en78hnlZ systemd[1]: mysqld.service: control process exited, code=exited status=1

解决方法

复制代码
rm -rf /var/lib/mysql/*
相关推荐
斯内普吖1 小时前
(开源)线上花店系统实战指南 基于 Java + SSM + Vue + MySQL
java·vue.js·mysql·开源
tryxr3 小时前
数据库如何通过 MVCC 实现隔离性
数据库·mysql·mvcc·隔离性
yeflx3 小时前
Ubuntu22.04安装Mysql Workbench
数据库·mysql·adb
夜雪一千3 小时前
MySQL 自增 ID 的底层原理与坑点
android·mysql·adb
for_ever_love__4 小时前
半同步复制:数据安全和服务可用之间怎么权衡
redis·mysql·缓存·一致性·数据·半同步复制·方式
曦夜日长4 小时前
MySQL系统篇,安装部署(一):CentOS 7 下从卸载到登录的完整实战
数据库·mysql·centos
AI源码5 小时前
PC 手机电商(MySQL 版)
数据库·mysql·智能手机
木棉软糖6 小时前
JDBC 读 ResultSet 读到一半,报 stream closed
java·mysql·spring
用户84913717547166 小时前
【技术面试高频】MySQL 存储 IP 地址:你还在用 VARCHAR?
mysql·面试
壹玖玖肆6 小时前
Docker 部署 openGauss 7.0(aarch64)MySQL 兼容模式建库与数据恢复完整实践
mysql·docker·容器