美文网首页我爱编程
centos6.8安装mysql5.7并做初始化配置

centos6.8安装mysql5.7并做初始化配置

作者: 好多个胖子 | 来源:发表于2018-04-10 11:29 被阅读22次

[TOC]

安装mysql5.7

安装mysql的yum源

  • 下载配置mysql的yum源的rpm包
//官网地址  https://dev.mysql.com/downloads/repo/yum/ 
wget https://repo.mysql.com//mysql57-community-release-el6-11.noarch.rpm
  • 安装用来配置mysql的yum源的rpm包
rpm -Uvh mysql57-community-release-el6-9.noarch.rpm 

安装成功后在/etc/yum.repos.d/下会多出几个mysql的yum源的配置

安装mysql

yum install mysql-community-server

开启mysql服务

service mysqld start

修改密码

首次登录

mysql安装成功后创建的超级用户'root'@'localhost'的密码会被存储在/var/log/mysqld.log,可以使用如下命令查看密码

//通过该命令可以查询初始密码用于登录
grep 'temporary password' /var/log/mysqld.log

//登录mysql  密码是上面查找的密码
[root@xxx]# mysql -uroot -pxxx
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.7.21 MySQL Community Server (GPL)

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 


修改密码校验

由于初始数据库密码校验的规则过于复杂,对于我们自己测试用的数据库可能只是想简单地设置123456即可,因此需要更改校验规则。

MySQL5.7是默认安装的validate_password插件可以用于修改这些设置。

如何验证validate_password插件是否安装呢?可通过查看以下参数,如果没有安装,则输出将为空。

mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name                        | Value |
+--------------------------------------+-------+
| validate_password_dictionary_file    |       |
| validate_password_length             | 8     |
| validate_password_mixed_case_count   | 2     |
| validate_password_number_count       | 1     |
| validate_password_policy             | LOW   |
| validate_password_special_char_count | 1     |
+--------------------------------------+-------+
6 rows in set (0.00 sec)

我们只需要修改其中的validate_password_policy和validate_password_length即可
1.validate_password_policy 密码组合检验 0表示只校验长度
2.validate_password_length 密码长度校验 默认是8

mysql> set global validate_password_policy=0;

mysql> set global validate_password_length=6;

修改密码

mysql> set PASSWORD=PASSWORD("123456");

远程登录

开放3306端口

//修改iptbales
[xxxxx] vim /etc/sysconfig/iptables 

//在其中增加一行
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

//重启iptables
[xxxxx]service iptables restart

修改root用户允许登录的host

由于默认root用户的host是localhost 所以不能允许远程登录,因此需要修改。这些配置都在数据库mysql中的user表里

mysql> use mysql;//进入mysql数据库
mysql> update user set host='%' where user='root' and host='localhost';//修改user表里root用户的host
mysql>exit
[xxxxx] service mysqld restart  //重启数据库mysql

远程登录

到这里 即可通过navicat或者sqlyog等远程工具登录数据库啦。

修改字符集和sql_mode

[xxxxx] vim /etc/my.cnf

//增加如下两行

#设置sql_mode可以防止出现ORDER BY clause is not in GROUP BY..this is incompatible with sq错误
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
#配置默认字符集为utf8  这样在存储中文时不会报错
character_set_server=utf8

相关文章

网友评论

    本文标题:centos6.8安装mysql5.7并做初始化配置

    本文链接:https://www.haomeiwen.com/subject/akvghftx.html