CentOS7安装Mysql并配置远程访问

(su root登录到root账户)

下载repo源

wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

安装rpm包

 rpm -ivh mysql-community-release-el7-5.noarch.rpm

安装mysql

yum install mysql-server

执行后开始下载和解压操作,过程中会遇到多次Y/N询问,输入y然后回车确认

安装完成后再次查看mysql

rpm -qa|grep mysql

如果安装成功会展示类似以下的信息: mysql-community-client-5.6.44-2.el7.x86_64 mysql-community-common-5.6.44-2.el7.x86_64 mysql-community-release-el7-5.noarch mysql-community-libs-5.6.44-2.el7.x86_64 mysql-community-server-5.6.44-2.el7.x86_64

重置密码

重置密码需要登录进mysql,但此时文件权限不属于当前账户,因此需先更改权限,然后重启mysql服务

#更改文件权限所属
chown root /var/lib/mysql/

#重启mysql服务
service mysqld restart

#登录到mysql
mysql -u root

#命令行以mysql>开头时即为登录到了mysql环境

接下来重置密码

#使用mysql的mysql数据库,需要注意在mysql环境中语句结束需要加上分号;才会被执行
use mysql;

#更新用户表,设置root用户的登录密码为rw
update user set password=password('rw') where user='root';

设置远程连接能力

  • 授于root账户所有权限
#授予%所有远程ip地址登录root账户的权限,访问密码为rw
GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "rw";
flush privileges;
exit;
  • 设置允许远程访问

有两种方式,一种是直接关闭防火墙服务,另一种是开放3306端口

1)关闭防火墙

#关闭服务
systemctl stop firewalld

#开机禁用
systemctl disable firewalld

2)开放3306端口 firewalld 防火墙(centos-7)运行命令,并重启:

firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload

OK,完成!