Centos安装mysql
卸载centos7自带的MariaDB
rpm -qa | grep mariadb// 查询出来已安装的mariadb
rpm -e --nodeps mariadb-libs-* //删除查询出来的mariadb
//安装依赖
yum -y install numactl.x86_64
下载
地址:https://dev.mysql.com/downloads/mysql/
上传
解压
tar -xvf xxx.tar
安装
yum install net-tools -y
rpm -ivh mysql-community-common-8.0.29-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.29-1.el8.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.29-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-8.0.29-1.el8.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.29-1.el8.x86_64.rpm
rpm -ivh mysql-community-server-8.0.29-1.el8.x86_64.rpm
chmod 777 /var/lib/mysql/auto.cnf
rm -rf /var/lib/mysql
初始化:
mysqld --initialize --console
启动mysql服务查看初始密码
systemctl start mysqld
cat /var/log/mysqld.log | grep localhost
登录
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
#或者update user set password=password("123456") where user="root";
flush privileges;
更改密码规则
SHOW VARIABLES LIKE 'validate_password%';
修改全局变量(临时性)
set global validate_password.policy=0;
永久更改
忘记密码
编辑 /etc/my.cnf 文件添加
在 [mysqld] 区域末尾添加配置,设置免密登录
skip-grant-tables
重启 MySQL 服务
systemctl restart mysqld
登录
mysql
修改 root 密码为空
update mysql.user set authentication_string='' where User='root';
刷新权限,退出
flush privileges;
quit;
将 /etc/my.cnf 中的 skip-grant-tables 去掉
再次重启 MySQL 服务
systemctl restart mysqld
再次登录 MySQL,密码为空,修改 root 密码为新密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'xxxxxx';
再次刷新权限,就可以进行访问了
flush privileges;