CentOS7安装Mysql数据库
1.安装前的准备工作
(1)关闭selinux
两种方式(建议2)
#(1)临时关闭,及时生效,重启失效
[root@localhost ~]# setenforce 0
#(2)永久关闭,重启生效,永不失效
[root@localhost ~]# vi /etc/selinux/config
将SELINUX=enforcing修改为SELINUX=disabled,然后重启生效
(2)关闭防火墙
两种方式(建议2)
#(1).临时关闭:即时生效,重启失效
#查看防火墙状态
[root@localhost ~]# systemctl status firewalld.service
#关闭防火墙
[root@localhost ~]# stop firewalld.service
#继续查看防火墙状态
[root@localhost ~]# systemctl status firewalld.service
查看防火墙状态,可以看到,disactive(dead)的字样,说明防火墙已经关闭
方法1一旦重启操作系统,防火墙就自动开启了,该怎么设置才能永久关闭防火墙
#(2).永久关闭防火墙,重启生效,永不失效
[root@localhost ~]# systemctl disable firewalld.service
[root@localhost ~]# shutdown -r now
2.安装Mysql数据库(以Mysql 5.6为例)
#检查是否安装Mysql
[root@localhost ~]# yum list installed | grep mysql
#若已安装,卸载
[root@localhost ~]# yum -y remove xxx
#下载mysql 5.6的yum源
[root@localhost ~]# wget http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm
[root@localhost ~]# rpm -ivh mysql-community-release-el6-5. noarch.rpm
[root@localhost ~]# yum repolist all | grep mysql
#yum安装mysql
[root@localhost ~]# yum install mysql-community-server -y
#启动mysql服务
[root@localhost ~]# service mysqld start
#设置mysql服务开机自启
[root@localhost ~]# chkconfig mysqld on
3.Mysql配置
(1)设置root密码(mysql 5.7之前默认密码为空)
#给root用户设置密码为 123456
[root@localhost ~]# mysql -uroot -p
mysql> use mysql;
mysql> update user set Password=password(‘123456’) where User=’root’;
#刷新生效,否则要重启mysql服务
mysql> flush privileges;
(2)修改mysql默认编码
#查看数据库编码
mysql>show variables like ‘character%’;
#修改my.conf配置文件
[root@localhost ~]# vi /etc/my.cnf
#加入以下内容
[client]
default-character-set=utf8
[mysqld]
character-set-server=utf8
#重启mysql服务
[root@localhost ~]# service mysqld restart
(3)mysql开启远程连接
mysql> GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’IDENTIFIED BY ‘123456’WITH GRANT OPTION;
mysql>flush privileges;
#查看是否授权成功
mysql> select host,user from user;
此时,用navicat等工具再次连接,发现依然连接不上,这是因为mysql服务端会对客户端进行DNS反向解析
解决方法如下:打开my.cnf文件,在[mysqld]后加 skip-name-resolve(即跳过DNS域名解析)
[root@localhost ~]# vi /etc/my.cnf
[mysqld]
skip-name-resolve
//保存后重启mysql服务
[root@localhost ~]# service mysqld restart
重新连接 :)