转自:https://www.cnblogs.com/jimboi/p/6405560.html
Centos6.8通过yum安装mysql5.7
1.下载好对应版本的yum源文件
2.安装用来配置mysql的yum源的rpm包
可以用: yum repolist enabled | grep mysql 来查看里面有哪些是允许装得
例如:【1】rpm -Uvh mysql57-community-release-el6-9.noarch.rpm
【2】yum localinstall -y mysql57-community-release-el6-9.noarch.rpm
安装完后会出现在:/etc/yum.repos.d/
3.安装mysql(yum install mysql-community-server)
4.开启mysql服务(service mysqld start)
5.开启远程连接(防火墙:/etc/sysconfig/iptables,以及root的%权限)
6.官网安装手册查看:https://dev.mysql.com/doc/refman/5.7/en/linux-installation-yum-repo.html
数据与目录:
【1】服务文件:mysqld文件,在/etc/init.d/mysqld 里面有数据库目录默认位置
【2】配置文件:/etc/my.cnf (查看配置文件,可以看到数据文件目录、sock文件目录等)
【3】相关目录:
(1)数据与sock目录:/var/lib/mysql (2)mysql客户端相关服务于工具:/usr/bin/ (3)服务端服务于工具:/usr/sbin/
(2)错误日志:var/log/mysqld.log (5)mysql进程文件:/var/run/ (6)帮助手册 :/use/share/man/
(7)头文件信息:/usr/include/ (8)lib文件:/usr/lib/ (9)支持文件:/usr/share/mysql/
7.卸载
【1】rem -qa |grep mysql 出来之后yum remove 文件名,单个删除
【2】rem -qa |grep mysql 出来之后yum remove 共同前缀*,批量删除
【3】rem -qa |grep mysql 出来之后用rpm -e 删除也可以
1.安装mysql的yum源
a.下载配置mysql的yum源的rpm包
用的centos6.5所以,下这个
参考目录,具体目录以 /etc/my.cnf 配置文件为准
--本人新手,找不到5.7版本的,官网根据上图我只找到8.0的,所以我直接用的下面的连接。
根据上面3张图片中的操作下载下来的rpm文件可以通过如下命令获取:
wget https://dev.mysql.com/get/mysql57-community-release-el6-9.noarch.rpm
--如若报错请看文末故障排除
2.安装用来配置mysql的yum源的rpm包
rpm -Uvh mysql57-community-release-el6-9.noarch.rpm
或
yum localinstall -y mysql57-community-release-el6-9.noarch.rpm
安装成功后在/etc/yum.repos.d/下会多出几个mysql的yum源的配置,如下:
可以用: yum repolist enabled | grep mysql 来查看里面有哪些是允许装得
3.安装mysql
yum install mysql-community-server
4.开启mysql服务
service mysqld start
mysql安装成功后创建的超级用户'root'@'localhost'的密码会被存储在
/var/log/mysqld.log,可以使用如下命令查看密码
grep 'temporary password' /var/log/mysqld.log
使用mysql生成的
'root'@'localhost'用户和密码登录数据库,并修改
其密码,具体命令
shell> mysql -uroot -p
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
5.开启远程连接
设置iptables开放3306端口
vi /etc/sysconfig/iptables
如果此时使用telnet远程登录mysql服务会出错:
解决此问题的方法为:
将localhost改成%
进入mysql的BIN目录
代码如下 | |
mysql -u root -p mysql>use mysql; mysql>update user set host ='%' where user ='root'; mysql>flush privileges; |
具体分析
1、在本机登入mysql后,更改“mysql”数据库里的“user”表里的“host”项,从”localhost”改为'%'。
代码如下 | |
mysql> mysql>use mysql; mysql>select 'host' from user where user='root'; |
#查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称)
代码如下 | |
mysql>update user set host = '%' where user ='root'; |
#修改host值(以通配符%的内容增加主机/IP地址,当然也可以直接增加某个特定IP地址,如果执行update语句时出现ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY' 错误,需要select host from user where user = 'root';
查看一下host是否已经有了%这个值,如果有了直接执行下面的flush privileges;即可)
代码如下 | |
mysql>flush privileges; |
再次尝试连接后,成功:
故障排除:
问题: ERROR: certificate common name “www.mysql.com” doesn’t match requested host name “137.254.60.11”.
解决:wget --no-check-certificate https://cmake.org/files/v3.6/cmake-3.6.1.tar.gz