wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
- 安装yum源
yum localinstall mysql80-community-release-el7-1.noarch.rpm
- 更新yum源
yum clean all
yum makecache
- 创建Mysql账户
groupadd mysql
useradd -g mysql mysql
- 开始安装MySQL
yum install mysql-community-server
- 启动MySQL
systemctl start mysqld
- 查看初始化密码
cat /var/log/mysqld.log | grep password
- 登录MySQL
mysql -u root -p
- 修改初始化密码(密码一定要大小写字母+数字+符号,如:Aa-123456789)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'yourpassword';
- 远程设置
use mysql;
update user set host='%' where user='root';
- 允许任何主机访问数据库
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;
FLUSH PRIVILEGES;
- 允许myuser用户使用mypassword密码从任何主机连接到mysql服务器
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
- 允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
报错备注
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
解决:/etc/my.cnf 下[mysqld]后添加 skip-grant-tables
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
解决:刷新权限:flush privileges;
最后补充:密码设置简单报错解决:
1.查看当前安全变量值
mysql> SHOW VARIABLES LIKE 'validate_password%';
2.修改变量
注意到8.0 比5.7多了带“.”的变量导致只设置一半是不够的,
set global validate_password.policy=0;
set global validate_password.length=4;
然后退出后再执行
mysql_secure_installation
继续重置root密码就可以设置为123456了;