CentOS7安装MySQL5.6_mysql


==========================================准备工作=========================================


第1步、首先,创建虚拟机

CentOS7安装MySQL5.6_centos7_02


第2步、安装CentOS

CentOS7安装MySQL5.6_centos7_03

第3步、配置IP

CentOS7安装MySQL5.6_centos7_04

CentOS7安装MySQL5.6_mysql_05

CentOS7安装MySQL5.6_centos7_06

CentOS7安装MySQL5.6_mysql_07


第4步、下面,用yum安装mysql

https://dev.mysql.com/downloads/repo/yum/


CentOS7安装MySQL5.6_centos7_08

CentOS7安装MySQL5.6_centos7_09


第5步、安装yum源

CentOS7安装MySQL5.6_centos7_10

CentOS7安装MySQL5.6_centos7_11


第6步、修改默认的安装版本为5.6

CentOS7安装MySQL5.6_centos7_12

CentOS7安装MySQL5.6_centos7_13


第7步、卸载CentOS7自带的mariadb

rpm -qa | grep mariadb

rpm -e --nodeps 文件名


第8步、创建一个mysql用户和mysql用户组,然后将mysql用户加到mysql用户组

groupadd mysql

useradd -g mysql mysql

CentOS7安装MySQL5.6_mysql_14


第9步、接下来,可以安装了

CentOS7安装MySQL5.6_mysql_15

安装完成后,可以在/etc下面多出一个my.cnf文件,查看如下

CentOS7安装MySQL5.6_mysql_16

可见,数据文件在/var/lib/mysql

CentOS7安装MySQL5.6_mysql_17


启动mysql

service mysql start|stop|status|restart

或者

systemctl start|stop|status|restart mysqld

CentOS7安装MySQL5.6_centos7_18

默认mysql开机自动启动,我不想让它开机自启动,于是取消开机自动启动

CentOS7安装MySQL5.6_mysql_19

默认情况下,root用户登录本机的mysql是不需要密码的,所以直接输入mysql回车就可以进去

CentOS7安装MySQL5.6_centos7_20

这是为什么呢?看一下mysql数据库中的user表就知道了

CentOS7安装MySQL5.6_mysql_21

默认的编码格式是utf-8

CentOS7安装MySQL5.6_centos7_22

可以给root用户也设一个密码

CentOS7安装MySQL5.6_centos7_23

在设密码的过程中,不知道怎么的,把root用户在localhost登录的权限给搞丢了,导致登录进去只能看到information_schema数据库。

然后各种百度,最终得到是怎么重置root密码,大致的做法是:先停掉mysql,然后启动的时候跳过权限,然后再进去修改

service mysql stop

mysqld_safe --skip-grant-tables &

但是,我的user表中都没有Host=localhost并且User=root这样的记录,即使将所有root用户的密码都改成123456,在命令行直接输入mysql进去也还是那样。

信号,机智的我发现,直接输入mysql进去用的应该是localhost,于是我指定主机地址为127.0.0.1进去改

CentOS7安装MySQL5.6_mysql_24

完美解决!!!

现在还有一个问题:现在仅仅只是本机可以访问,远程计算机还无法访问mysql

于是,授权远程可以用root访问mysql

CentOS7安装MySQL5.6_mysql_25

CentOS7安装MySQL5.6_mysql_26

遗憾的是,外部还是无法访问。

我发现,ping 192.168.10.128是可以通,但是telnet 192.168.10.128 3306是不通的。我怀疑是防火墙的问题,于是关闭防火墙,再试,通了!

CentOS7安装MySQL5.6_mysql_27

CentOS7安装MySQL5.6_mysql_28

但是关闭防火墙始终不是办法,于是修改防火墙,添加3306端口

CentOS7安装MySQL5.6_mysql_29

现在就可以了

CentOS7安装MySQL5.6_mysql_30




参考

https://dev.mysql.com/downloads/mysql/

http://blog.csdn.net/a9529lty/article/details/14519471

https://stackoverflow.com/questions/9382219/error-1045-28000-access-denied-for-user-rootlocalhost-using-password-ye

http://www.sojson.com/blog/197.html

http://blog.csdn.net/xlgen157387/article/details/52672988

https://www.cnblogs.com/moxiaoan/p/5683743.html

http://blog.csdn.net/gebitan505/article/details/51726649