CentOS7-MySQL安装与远程访问

本人乃学生小白一枚,近期在学习Linux,所以就简单记录一下~

安装MySQL

检查

首先,需要检查一下是否已经安装了MySQL : # rpm -qa | grep mysql

step1

这时候没有任何输出,则代表没有安装MySQL

下载源

CentOS7的yum源中没有自带的MySQL安装程序,所以要手动下载

step2

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

安装源

安装刚才下载的mysql-community-release-el7-5.noarch.rpm

step3

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

正式安装MySQL

安装

# yum install mysql-server

重启服务

等待安装完成后,重启MySQL服务: # service mysqld restart

设置密码

新安装的MySQL是没有密码的,下面进行密码设置

输入# mysql -uroot可以直接登录,设置密码的时候,一定记得用password()函数加密

1
2
3
mysql> set password = password('yourPassword');
or
mysql> update user set password = password('yourPassword') where user = 'root';

  • 修改完成后退出MySQL重启服务就可以了.(\q、quit、exit都可以退出)

远程访问

本人使用的腾讯云服务器

设置用户

首先,远程访问需要设置一个允许远程访问的用户,root用户默认是不允许远程访问的

1
mysql> grant all privileges on *.* to 'yy'@'%' identified by 'password'

授予yy用户所有访问权限,*.*代表任意数据库的任意表,%代表任意ip地址,通过password密码来访问(这里也可以直接授予root用户这种权限)

授权完成后刷新一下 : mysql> flush privileges;

  • 其次,需要开放3306端口
    1
    # firewall-cmd --zone=public --add-port=3306/tcp --permanent

出现success即开放成功,然后重启防火墙

1
# systemctl restart firewalld.service

设置安全组

然后,需要设置一个安全组,在安全组的规则里面必须开放3306端口

这些工作作完之后,就可以开始尝试连接了

step4

我在连接的时候遇到了下面的问题,连接失败了

error

我当时想到是

  1. 网络问题,使用ping命令查看能否ping
  2. 端口问题,检查了端口是否开放
  3. 服务器问题,查看MySQL服务是否开启
  4. 安全组设置问题,检查一下安全组的设置

然而呢,都不是这些问题,我也搜索了很久,最后被我发现了,是我安全组设置完了之后,没有关联实例!没有关联实例!没有关联实例!重要的事情说三遍.

以上就是我简单的学习记录.

文章目录
  1. 1. 安装MySQL
    1. 1.1. 检查
    2. 1.2. 下载源
    3. 1.3. 安装源
    4. 1.4. 正式安装MySQL
  2. 2. 远程访问
    1. 2.1. 设置用户
    2. 2.2. 设置安全组
|