【linux系统(ubuntu16.04)】安装MySQL数据库以及配置MySQL允许远程IP连接

hELlo,大家好,今日第四弹来喽~这是元气满满的节奏呀😊
继续教大家在阿里云服务器上安装和配置MySQL数据库。

一. 安装及注册

  1. 大家先通过Xshell 6连接上自己的云服务器(还不会操作Xshell 6的同学请移步翻阅我之前的博客),在root用户下操作,正式安装之前,按照国际惯例,先来更新一波apt
# apt update

在这里插入图片描述

  1. 安装:推荐大家安装MySQL5.7的server版,直接一行代码:
# apt install mysql-server-5.7
  1. 注册:安装中会出现下面的界面,是让你设置root账号密码,这个密码很重要很重要很重要。当然需要输入两次。

在这里插入图片描述
在这里插入图片描述

  1. 测试登录:等待程序运行完毕,就算是安装完成了,这时候我们可以测试以下,登录我们的root账号,MySQL数据库默认是只允许本地localhost连接(即127.0.0.1),-u之后是你登录的用户名,-h之后是你登录的IP地址,之后会教大家配置远程IP连接,到时候这里就可以换成你的阿里云服务器ECS的外网IP
# mysql -uroot -h127.0.0.1 -p

在这里插入图片描述
控制台换成mysql>就说明你已经安装成功啦~

二. 配置远程IP连接

MySQL数据库默认会有四张表,配置远程连接本质上就是修改user表里root用户的host值:
① host值默认为localhost(127.0.0.1),只允许本地连接;
② host值若为59.110.52.105,具体的IP地址,意思就是root用户只能通过客户端IP地址为192.168.1.1的的地址去访问;
③ host值还可以是192.168.1.%,%是一个通配符,那么就表示只要是IP地址前缀为“192.168.1.”的客户端都可以连接;
④ 我们是要把host值改为%,表示所有IP都有连接权限。

2.1 修改user表——root用户的host值为%

具体的配置步骤如下(注意mysql的指令都必须以分号结尾):

  1. 查看四张表:
mysql > show databases;

在这里插入图片描述

  1. 我们用到的就是mysql这张表,现在打开它:
mysql > use mysql;

在这里插入图片描述

  1. 搜索host列:
mysql > select user,host from user;

在这里插入图片描述

  1. 你会发现root账户的host值默认为localhost,修改为%即可:
mysql > update user set host='%' where user='root';

在这里插入图片描述

  1. 退出MySQL,然后重启mysql服务:
mysql > exit;
# service mysql restart

在这里插入图片描述

2.2 修改/etc/mysql/my.cnf文件

只配置第一步的host值,你会发现还是不能通过外网IP连接,它会提示以下错误:

ERROR 2003 (HY000): Can't connect to MySQL server on '59.110.52.105' (111)

原因就是MySQL默认是不开放对外访问的功能的(MySQL的3306端口默认是不对外开放的)。我们来查看一下3306端口的状态:

# netstat -an | grep 3306

在这里插入图片描述
从图里可以看到:3306端口还是只允许127.0.0.1的本地访问。接下来我们就去解决这个问题:
修改/etc/mysql/my.cnf文件。用vim编辑器打开文件:

# vim /etc/mysql/my.cnf

把下述代码分别添加到图示位置:
(设置默认的字符编码方式为utf8,其实与远程连接无关,哈哈哈)

[client]
default-character-set=utf8
[mysqld]
character-set-server=utf8
max_connections=1000

(重点来了来了来了!修改3306端口IP监听范围为0.0.0.0,意思就是不限制IP地址,都可以远程访问MySQL数据库)

bind-address=0.0.0.0	

在这里插入图片描述
保存并退出,继续退出MySQL,再次重启mysql服务:

mysql > exit;
# service mysql restart

现在再查看3306端口信息:

# netstat -an | grep 3306

在这里插入图片描述

2.3 云服务器安全组添加3306端口

在这里插入图片描述
这一步是必不可少的,说多了都是泪呀,当时的我年少轻狂, 现实的报错让我一脸懵逼…

ubuntuERROR 2003 (HY000): Can't connect to MySQL server on '59.110.52.105' (110)

如果和我有相同遭遇的童鞋,就是你的云服务器3306端口没开,没错,和之前SSH的22端口是同样的味道~
到这里就可以恭喜泥萌啦 ~终于终于终于!可以远程连接啦❀❀❀❀

# mysql -uroot -h59.110.52.105 -p

在这里插入图片描述


国际惯例再加一条:看见我的博客自动素质四连。哈哈哈❤❤❤❤
在这里插入图片描述

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值