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

16. 如果乱码, 需要设置字符集:

查看字符集:
方法一:show variables like '%character%';
方法二:show variables like 'collation%';
设置字符集:
/*建立连接使用的编码*/
set character_set_connection=utf8;
/*数据库的编码*/
set character_set_database=utf8;
/*结果集的编码*/
set character_set_results=utf8;
/*数据库服务器的编码*/
set character_set_server=utf8;
set character_set_system=utf8;
set collation_connection=utf8;
set collation_database=utf8;
set collation_server=utf8;
设置完成后, 重启mysql字符集又失效了:
vim /etc/my.cnf文件:
在[mysqld]里面添加 character-set-server=utf8
重启mysql:
service mysqld restart

  

最新文章

  1. wifi 破解
  2. 多线程NSInvocationOperation(NSOperationQueue)的基本用法
  3. "Hello World!" for the NetBeans IDE
  4. POJ 3662 Telephone Lines(二分+最短路)
  5. OpenGL(四)——有用的函数
  6. 转 Java多线程中Sleep与Wait的区别
  7. PHP函数之日期时间函数date()使用详解
  8. Android NDK开发(五)--C代码回调Java代码【转】
  9. 虚拟化之vmx配置文件
  10. node.js模块之Buffer模块
  11. HTML4如何让一个DIV居中对齐?float输入日志标题
  12. wamp 虚拟目录的设置(转载)
  13. 扩展Microsoft Graph数据结构 - 架构扩展
  14. 由浅入深讲解责任链模式,理解Tomcat的Filter过滤器
  15. bat如何创建多级文件夹(在android设备中)
  16. BZOJ2434[Noi2011]阿狸的打字机——AC自动机+dfs序+树状数组
  17. CH 3401 - 石头游戏 - [矩阵快速幂加速递推]
  18. Hbase 学习(十) HBase Snapshots
  19. swoole的进程模型架构
  20. To be learned

热门文章

  1. CF957E Contact ATC
  2. read函数
  3. Java字符串到数组的转换--最后放大招
  4. layui表单一
  5. 咀嚼Lock和Synchronized锁
  6. C++ 数据结构 1:线性表
  7. padding的讲究
  8. Docker - 解决创建 tomcat 容器镜像却无法访问页面的问题
  9. 链路层输出 -qdisc
  10. python pip install指定国内源镜像