20191209_Centos7.2使用yum安装mysql

1. 下载mysql的rpm包

[root@izwz91qnvovd6suufon1ccz ~]# wget http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm

2. 安装rpm包

[root@izwz91qnvovd6suufon1ccz ~]# yum localinstall -y mysql57-community-release-el7-7.noarch.rpm

3. 安装mysql 5.7

[root@izwz91qnvovd6suufon1ccz ~]# yum install -y mysql-community-server

4. 启动mysql 5.7

[root@izwz91qnvovd6suufon1ccz ~]# systemctl start mysqld.service

5. 查看数据库的状态:

service mysqld status

6. MySQL在5.7安装完成之后有一个默认密码, 查看默认密码:

[root@izwz91qnvovd6suufon1ccz ~]# grep 'temporary password' /var/log/mysqld.log
2019-12-09T04:21:12.283622Z 1 [Note] A temporary password is generated for root@localhost: b;M%;tBXw5E8

7. 修改默认密码:

[root@izwz91qnvovd6suufon1ccz ~]# mysql -u root -p
Enter password:  --使用上面的密码进入mysql
mysql> set password = password('yourpassword');
Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> alter user 'root'@'localhost' password expire never; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> quit; --退出后再使用密码登陆

8. 赋远程访问权限:

mysql> grant all privileges on *.* to 'root'@'%' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

9. 修改mysql以让它不要区别表名大小写, 需要重启mysql服务

[root@izwz91qnvovd6suufon1ccz ~]# vim /etc/my.cnf
[mysqld]
#
lower_case_table_names=1  --在最后一行添加

11. 看下防火墙:

[root@izwz91qnvovd6suufon1ccz ~]# firewall-cmd  --list-all
FirewallD is not running

12. 我这里防火墙没有运行直接可以使用navicat远程访问了, 默认端口3306

13. 关于防火墙:

1. 查看防火墙
firewall-cmd --list-all 
2. 加入3306端口
firewall-cmd --permanent --add-port=3306/tcp  #添加完成后注意重启   
#删除端口 firewall-cmd
--permanent --remove-port=8090/tcp #删除完成后注意重启
3. 重启防火墙
service firewalld restart
4. 查看3306是否开放
 firewall-cmd --query-port=3306/tcp
-----------------------------------------------------------
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
firewall-cmd --permanent --zone=public --add-port=100-500/tcp #批量开启TCP端口
firewall-cmd --permanent --zone=public --add-port=100-500/udp
firewall-cmd --reload
-----------------------------------------------------------
5. 查看防火墙状态
systemctl status firewalld.service
6. 关闭防火墙
systemctl stop firewalld.service
7. 启动防火墙
systemctl start firewalld
8. 开机禁用防火墙
systemctl disable firewalld
9. 开机启用防火墙
systemctl enable firewalld

 14. 密码策略:

#创建用户的时候提示密码策略
Your password does not satisfy the current policy requirements
mysql> SHOW VARIABLES LIKE 'validate_password%'; #使用root查看密码策略
参数解释:
1).validate_password_dictionary_file 指定密码验证的文件路径;
2).validate_password_length  密码最小长度
3).validate_password_mixed_case_count  密码至少要包含的小写字母个数和大写字母个数;
4).validate_password_number_count  密码至少要包含的数字个数
5).validate_password_policy 密码强度检查等级,对应等级为:0/LOW、1/MEDIUM、2/STRONG,默认为1
注意:
0/LOW:只检查长度;
1/MEDIUM:检查长度、数字、大小写、特殊字符;
2/STRONG:检查长度、数字、大小写、特殊字符字典文件。
6).validate_password_special_char_count密码至少要包含的特殊字符数
mysql> set global  validate_password_mixed_case_count=0;
 #小写字母长度改下

mysql> create user myroot identified by 'ROOT@1234';
mysql> grant all privileges on *.* to 'myroot'@'%' IDENTIFIED BY 'ROOT@1234' WITH GRANT OPTION;

15. 一些设置:

#设置开机启动
systemctl enable mysqld.service
#启动mysql
systemctl start mysqld 
#停止
systemctl stop mysqld
#查看状态
systemctl status mysqld

  

原文地址:https://www.cnblogs.com/wxylog/p/12010376.html