安装
找MySQL官方yum仓库地址
这一步只是告诉大家后面安装脚本中MySQL Yum 仓库来源,可以跳过。
打开页面 MySQL - yum 下载源找到跟当前系统版本匹配的yum源,点击【Download】。
鼠标右击【No thanks, just start my download】来复制链接地址,安装的时候要使用。
- yum -y localinstall https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
-
- yum -y install mysql-community-server
如果报下面异常:
- Downloading packages:
- warning: /var/cache/yum/x86_64/7/mysql80-community/packages/mysql-community-common-8.0.30-1.el7.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 3a79bd29: NOKEY
- Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022
-
-
- GPG key retrieval failed: [Errno 14] curl#37 - "Couldn't open file /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022"
原因是Mysql的GPG升级了,需要重新获取
使用以下命令即可
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
再执行
yum -y install mysql-community-server
常用命令:
- # 启动
- systemctl start mysqld
-
- # 重启
- systemctl restart mysqld
-
- # 停止
- systemctl stop mysqld
登陆并修改root密码
要得先启动服务!!!
- cat /var/log/mysqld.log | grep password
- mysql -u root -p
修改root密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root'
如果提示下图中的错误,是因为密码强度不够,需要包含大小写英文、数字和符号。
查看密码策略:
- mysql> SHOW VARIABLES LIKE 'validate_password%';
- +--------------------------------------+--------+
- | Variable_name | Value |
- +--------------------------------------+--------+
- | validate_password.check_user_name | ON |
- | validate_password.dictionary_file | |
- | validate_password.length | 8 |
- | validate_password.mixed_case_count | 1 |
- | validate_password.number_count | 1 |
- | validate_password.policy | MEDIUM |
- | validate_password.special_char_count | 1 |
- +--------------------------------------+--------+
- 7 rows in set (0.01 sec)
策略说明
validate_password.length 是密码的最小长度,默认是8,我们把它改成6
输入:set global validate_password.length=6;
validate_password.policy 验证密码的复杂程度,我们把它改成0
输入:set global validate_password.policy=0;
validate_password.check_user_name 用户名检查,用户名和密码不能相同,我们也把它关掉
输入:set global validate_password.check_user_name=off;
远程连接问题
如果远程无法链接,记得先排查防火墙的问题。
如果连接报下图中的错误,是因为root用户默认只能通过本机(localhost)来访问。
1130 - Host ‘192.168.0.1’ is not allowed to connect to this MySQL server
通过mysql库中user表可以看到个每个用户允许的host
我们通常不使用root进行远程链接,而是创建一个新用户用于远程链接。
- # 创建允许所有主机使用lyt访问的记录,并指定密码
- CREATE USER 'lyt'@'%' IDENTIFIED BY '199000';
- # 赋予这个配置特权
- GRANT ALL PRIVILEGES ON *.* TO 'lyt'@'%';