先更新一下apt仓库:
sudo apt-get update顺便说一下,因为不知道你们用的都是什么账户,我也搞不清楚哪些指令权限要求比较高,所以我所有指令都加sudo了,这样不管是谁复制粘贴都能直接用,不会出现权限问题。 然后安装mysql-server:
sudo apt-get install mysql-server -y到这一步其实mysql就已经安完了并且自动启动了,可以看一下:
sudo service mysql status
设置root密码
此时mysql的root账户没有设置密码,可以直接用mysql指令登录:
设置一下root的密码(mynewpassword部分改成你自己要设置的密码):
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'mynewpassword';
退出,输入mysql指令发现不能直接登录了:
目前为止可以直接在服务器上用mysql了。
编辑配置文件监听远程连接
默认情况下,MySQL 数据库仅监听本地连接,如果想让外网远程连接到数据库,我们需要修改配置文件,让 MySQL 可以监听远程固定 ip 或者监听所有远程 ip。 这里需要使用一个命令行文本编辑器,我用的vim所以就教一下vim,你们要是会nano或者别的自然知道该怎么弄,要是听不懂就照我的来。安装vim:
sudo apt-get install vim -y然后用vim打开mysqld.cnf配置文件:
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf找到bind-address = 127.0.0.1这一行:
mysql -u root -p输入密码,登录。 然后选择mysql数据库:
use mysql;
查看账号的主机权限:
select user, host from user;
host处为localhost时只允许本地使用,改成%即可远程使用:
update user set host='%' where user='root';
退出mysql。
检查ubuntu自带的防火墙状态
sudo ufw status
如果是inactive说明防火墙没开,那就不用管了。防火墙是干嘛的呢,我自己的理解就是,如果开了防火墙,那服务器上所有端口都是默认禁止连接的,只有你允许的端口才允许连接,类似于这种: