1.背景
2.安装
2.1.下载安装包
wget https://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
2.2.安装mysql
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
3.安装mysql服务
3.1.进入目录
首先进入cd /etc/yum.repos.d/目录
cd /etc/yum.repos.d/
3.2.安装MySQL服务
yum -y install mysql-server
如果报错如下:
解决办法,执行命令:
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
然后重新执行安装mysql服务的命令:
yum -y install mysql-server
表示安装成功
3.3.启动,密码重置,登录mysql
启动:systemctl start mysqld
查看临时密码:grep 'temporary password' /var/log/mysqld.log
使用临时密码登录:mysql -uroot -p
密码修改:
把MySQL的密码校验强度改为低风险
set global validate_password_policy=LOW;
修改MySQL的密码长度
set global validate_password_length=5;
修改MySQL密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'admin';
3.4.允许远程连接
关闭Cenots的防火墙,或开启3306端口
sudo systemctl disable firewalld切换到mysql数据
use mysql;查看user表
select Host,User from user;
发现root用户只允许localhost主机登录登录修改为允许任何地址访问
update user set Host='%' where User='root';刷新权限
flush privileges;
3.5客户端连接
4.常见问题
1.MySql解决mysql没有root用户问题
发现mysql一开始没有root用户
先说这个问题产生的影响,这个跟解题有关,有必要说明,我的user表没有任何一个用户,包括root,所以一开始我要给权限,方便后续操作:
vim /etc/my.cnf
skip-grant-tables #在[mysqld]下面添加这一行,忽略权限表然后重启mysql:
systemctl restart mysqld开始解题:
登录mysql
mysql -uroot -p #这时候是不需要密码和账号的直接回车就可以进去
切换到mysql数据库
use mysql;解决步骤:
1.创建root用户
mysql> create user 'root'@'%' identified by 'root的密码'; # %表示所有Ip可以链接
2.给予root所有权限
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION; #赋予所有库所有表操作权限
mysql> flush privileges; # 刷新
mysql> exit; #退出3.删除配置文件中的 skip-grant-tables
vim /etc/my.cnf
# skip-grant-tables #在[mysqld]下面添加这一行,忽略权限表
4.重启mysql
systemctl restart mysqld备注如果操作中保存,可以执行 flush privileges; # 刷新
2.mysql最大链接数查看
查看最大链接数 show variables like 'max_connections'; 设置最大连接数 set global max_connections = 300; 查看当前链接详情 show processlist;
完美!