ubuntu安装Mysql配置远程连接

Mysql的安装非常简单,安装之前你只要了解基本的sql语句就OK。

第一步:安装mysql

 Ubuntu 中最新版本的 MySQL 包含在apt软件包服务器中,只需更新包索引并安装默认版本 :

sudo apt-get update

sudo apt-get install mysql-server

安装过程中会要求输入mysql root账户密码,然后其他的都是自动完成。

第二步:配置mysql

sudo mysql_secure_installation

配置有好几项:

第一项是修改root密码,密码对强度有要求,根据个人的选择,太弱的密码将无法通过。

第二项是删除匿名账户,确认y。

第三项是只允许root账户连接localhost,从而禁止远程登录,否认n。

第四项是删除mysql自带的test数据库,确认y。

最后一项是加载权限列表,使数据表的操作立即生效,确认y。

配置完成后,mysql服务就已经启动了。

第三步:检查mysql状态

systemctl status mysql.service

看到以下信息,表示服务启动成功。 

ubuntu安装Mysql配置远程连接

第四步:配置远程访问

在Ubuntu下MySQL默认是只允许本地访问的,因此在远端使用workbench是连不上的,必须修改相应配置。

4.1 root账户登录:

sudo mysql -u root -p

ubuntu安装Mysql配置远程连接

4.2 新建数据库和远程登录用户

数据库的操作是高风险的,一定要控制权限,永远不要使用root账户直接远程。

用root账户为远程访问的人员分配账户和数据库,新建立用户,密码强度也要满足要求。

# 创建数据库d_student
CREATE DATABASE d_student;

# 创建用户jeg(密码xxxxxx)并赋予其数据库d_student的所有权限
# %表示任意ip地址,即允许用户jeg可以从任意机器上登入mysql
GRANT ALL PRIVILEGES ON d_student.* TO [email protected]"%" IDENTIFIED BY "xxxxxx";


# 创建只有select权限的账户tang
GRANT SELECT ON d_student.* TO [email protected]"%" IDENTIFIED BY "xxxxxx";

4.3 查看系统用户

use mysql
# 查看user,host数据
SELECT user,host FROM user; 

可以看到新添加的jeg对应的host为%,即允许jeg使用任意ip登录,这样就不受用户的ip地址限制了。

ubuntu安装Mysql配置远程连接

# 查看用户拥有的权限
SHOW GRANTS FOR 'usr'@'%';

 ubuntu安装Mysql配置远程连接 ubuntu安装Mysql配置远程连接

# 查看新分配的数据库是否添加成功
SHOW DATABASES;

4.4 查看mysql的端口

# 通常情况下端口是3306
SHOW GLOBAL VARIABLES LIKE 'port';

ubuntu安装Mysql配置远程连接

4.5 检查网络连接

# 检查参数:skip_networking, on:只能单机 off:允许网络连接
SHOW VARIABLES LIKE '%skip_networking%';

 ubuntu安装Mysql配置远程连接

# 退出mysql
eixt

4.6 取消mysql默认的本地地址绑定 

cd /etc/mysql/mysql.conf.d

vim mysqld.cnf

注释掉bind-address项

ubuntu安装Mysql配置远程连接

# 重启mysql
sudo service mysql restart

# 查看状态
systemctl status mysql.service

# 查看3306是否开启
netstat -tunlp | grep 3306

ubuntu安装Mysql配置远程连接

最后,稍等片刻,远端机器cmd检查telnet ip 3306看一下,能够连通,就可以远程登录了。

安装windows的mysql客户端,使用刚刚分配的用户,访问3306端口,远程操作数据库走起。

ubuntu安装Mysql配置远程连接

------over------