参考 https://blog.csdn.net/weixin_44678261/article/details/102503018
一、下载mysql rpm安装包
https://dev.mysql.com/downloads/mysql/
二、解压到指定目录
# /usr/local/目录下 创建mysql目录
cd /usr/local
mkdir mysql
cd /usr/local/mysql
#解压缩指定目录下的mysql压缩文件到mysql目录下
tar -xvf /usr/local/mysql-8.0.22-1.el7.x86_64.rpm-bundle.tar
三、安装各RPM模块
#安装common
rpm -ivh mysql-community-common-8.0.22-1.el7.x86_64.rpm --nodeps --force
#安装libs-8.*
rpm -ivh mysql-community-libs-8.0.22-1.el7.x86_64.rpm --nodeps --force
#安装client-8.*
rpm -ivh mysql-community-client-8.0.22-1.el7.x86_64.rpm --nodeps --force
#安装server
rpm -ivh mysql-community-server-8.0.22-1.el7.x86_64.rpm --nodeps --force
查看已安装的mysql模块,确认4个模块都已安装
rpm -qa | grep mysql
四、初始化mysql
mysqld --initialize;
可能遇到的报错解决方式:
===================================================
报错 1
-----------------------
mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
解决方式:yum方式安装 libaio
yum install -y libaio
#重新初始化mysql
mysqld --initialize;
-----------------------
报错2
mysqld: error while loading shared libraries: libssl.so.10: cannot open shared object file: No such file or directory
解决方式:
https://blog.csdn.net/torpidcat/article/details/140006011
#重新初始化mysql
mysqld --initialize;
-----------------------
===================================================
五、权限、启动、开机自启、查看初始密码
# 将/var/lib/mysql目录及其所有子目录和文件的所有者和组都更改为mysql
chown mysql:mysql /var/lib/mysql -R;
# 启动mysql服务
systemctl start mysqld.service;
# mysql服务 开机自启
systemctl enable mysqld;
# 查看安装的mysql初始密码
cat /var/log/mysqld.log | grep password
其他命令:
# 查看运行状态
systemctl status mysqld.service;# 启动
systemctl start mysqld.service;# 重启
systemctl restart mysqld.service;# 停用
systemctl stop mysqld.service;
六、使用初始密码登录 - 修改初始密码:
#使用初始密码登录 回车输入密码登录
mysql -uroot -p
#修改初始密码为123456
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
七、其他
1. 如果需要修改连接数:
查看当前最大连接数:
SELECT @@max_connections;
# 或
SHOW VARIABLES LIKE 'max_connections';
https://blog.csdn.net/torpidcat/article/details/138856997
修改:
2. SSH方式连接(建议使用)
以Navicat为例:
直接常规方式使用IP、账号密码连接,失败
SSH方式:
常规 选项卡: localhost + 数据库账号密码
SSH 选项卡:勾选SSH,服务器IP + 服务器账号密码
如果出现该错误,可能是服务器账号密码错误导致:SSH中使用的是服务器的账号密码,不是数据库的
11 Access denied. Authentication that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
3. 对外开放3306端口方式(不建议使用):
以阿里云为例:
找到 安全组规则,新增3306端口
选中ECS实例,加入安全组,选中对应的安全组
服务器IP + 数据库账号密码登录