MySQL安装常见错误包括:libaio依赖缺失需安装对应包;tar包安装需指定绝对路径的--datadir和--lc-messages-dir;systemd启动失败应检查mysqld前台日志及路径权限;5.7+首次登录须用初始化生成的临时密码。
libaio.so.1: cannot open shared object file
这是最常见依赖缺失错误,尤其在最小化安装的 CentOS

mysqld)运行依赖 libaio 库,但系统默认不装。
yum install -y libaio(RHEL 8+ 可用 dnf)apt-get install -y libaio1(注意不是 libaio-dev,那是开发头文件)ldd $(which mysqld) | grep aio,应输出类似 libaio.so.1 => /lib64/libaio.so.1 (0x...)
Can't find error-message file
MySQL 二进制包解压后不会自动配置数据目录和语言文件路径,mysqld 找不到 errmsg.sys 就会报这个错,常被误判为权限问题。
--datadir 和 --lc-messages-dir,例如:bin/mysqld --initialize --user=mysql --datadir=/var/lib/mysql --lc-messages-dir=share/english
--lc-messages-dir 的值必须是解压后目录中 share/english(或对应语言子目录)的**绝对路径**,相对路径无效chown -R mysql:mysql /var/lib/mysql
Failed to start MySQL Server 且日志无有效信息systemd 会屏蔽部分标准错误输出,真正原因往往藏在 mysqld 自身日志里,而非 journalctl -u mysqld 显示的内容。
mysqld 是否能前台运行:bin/mysqld --defaults-file=/etc/my.cnf --user=mysql --console,错误会直接打印到终端
/etc/my.cnf 中 [mysqld] 段落有 pid-file 和 socket 路径,且目录可写(如 /var/run/mysqld/ 需提前 mkdir -p /var/run/mysqld && chown mysql:mysql /var/run/mysqld)ProtectHome=yes 或 NoNewPrivileges=yes,可能阻止访问 /var/lib/mysql,临时注释测试Access denied for user 'root'@'localhost'
5.7+ 版本启用 validate_password 插件且初始化时生成随机密码,不是空密码,也不是 mysql_secure_installation 里设的密码——那个是后续步骤。
grep 'temporary password' /var/log/mysqld.log(RPM 安装)或初始化命令输出的最后一行(tar 包安装)mysql -u root -p,然后立刻改密:ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourStrongPass123!';
my.cnf 的 [mysqld] 下加 validate_password=OFF,但仅限测试环境lc-messages-dir 和 systemd 的路径隔离机制,容易反复踩坑。