综述由AI生成在 Linux 环境下离线部署 MySQL 8.0 的全过程。涵盖下载安装包、解压重命名、创建用户组、配置 my.cnf、初始化数据目录、注册系统服务、启动登录及修改初始密码等关键步骤。同时提供了初始化报错(glibc 依赖)和服务启动报错(日志目录缺失)的排查与解决方案,适用于无网络环境的服务器部署场景。
PS:此步骤重启 mysql 服务可能会 log-error 文件目录不存在报错,可参考第 15 条的解决方法。
12、MySQL 服务启动成功后,就可以登录到 mysql 数据库
/usr/local/mysql/bin/mysql -u root -p
输入刚开始初始化后查看到的初始密码,即可完成进入 mysql 数据库
PS:如果想直接使用 mysql -u root -p 直接登录,则需要先把 mysql 的路径映射链接到/usr/bin 目录下
ln -s /usr/local/mysql/bin/mysql /usr/bin
13、更改 mysql 数据库登录初始密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
FLUSH PRIVILEGES; #刷新
14、完成部署
退出数据库,再次登录即可输入更改的密码,到此 mysql 已经部署完成,成功部署。
15、部署时可能出现的问题
1、初始化数据库报错
初始化数据库的时候报'./mysqld:/lib64/libstdc++.so.6:version 'CXXABI 1.3.11' not found (required by ./mysqld)'
此报错是缺少对应的 libstdc++ 版本依赖问题,可以先查看对应的版本
strings /usr/lib64/libstdc++ |grep CXXABI
find / -name "libstdc++.so.6*"
可以看到是缺少相应的版本依赖。
(1)解决办法
1)可以看缺少那些依赖就安装对应的依赖版本
使用 rpm 查看 glibc 版本,然后去官网下载对应的版本即可
2、启动 mysql 服务报错
启动 mysql 服务时可能会报'Starting MySQL.2024-09-20T09:32:58.959370Z mysqld safe error:log-error set to/var/log/mariadb/mariadb.log',however file doesn't exist.Create writable for us 'mysql''