远程服务器连接

云服务器

因为项目需要一个数据库,所以就在阿里云哪里用云翼计划买了一个小型服务器,虽然小但是也够用

img1

创建数据库

使用ubuntu下的命令就可以自动安装mysql数据库

1
2
3
sudo apt-get install mysql-server
apt-get isntall mysql-client
sudo apt-get install libmysqlclient-dev

安装成功后输入下面指令

sudo netstat -tap | grep mysq

如果是下图这样

img2

那么就成功安装了,下面就是通过mysql -u root -p就可以登录mysql数据库

img3

注意,在第一次登录mysql时输入的密码即为你的初始密码,不输就是空

远程连接

在ubuntu下,修改/etc/mysql/mysql.conf.d/mysqld.cnf文件,将

bind-address = 127.9.0.1语句注释掉或者改成bind-address=0.0.0.0

img4

bind-address = 127.9.0.1 意味着只允许本地登录,而把他改成0.0.0.0就代表允许所有的ip登录

但是这还不够,当我们连接远程数据库时,会新建一个root 用户,但是这个root只允许本地登录,不允许远程登陆,我们可以通过

1
2
use mysql
select host, user from user;

来验证发现这个roothost只有一个localhost

这是我们要通过设置来使他允许远程用户登录

在mysql 中输入

1
2
3
4
# 允许所有root用户登录
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root用户密码' WITH GRANT OPTION;
# 允许指定ip的root用户登录
GRANT ALL PRIVILEGES ON *.* TO root@'指定的IP地址' IDENTIFIED BY 'root用户密码' WITH GRANT OPTION;

然后重载授权表

FLUSH PRIVILEGES;

这时我们再来验证一下root的权限

img5

这时就应该可以连接上了

但是 ,如果这时还是连接不上,就可能是防火墙的问题,输入ufw disable把防火墙关闭

如果还不行的话,就有可能是阿里云的问题了,因为我用的是一个轻量级的服务器,所以在防火墙中把端口3306打开即可

img6

结束

经过以上步骤mysql的远程连接基本上就可以搞定了

img7

---------Thanks for your attention---------