Mysql5.7开启远程登陆

前言

开启远程登陆的时候老是出问题,这里总结一下。
先说明一下环境:
操作系统:Ubuntu Server18.04
Mysql版本:Mysql5.7

开启远程登陆

先总结一下标准的流程,有什么问题后面再说。
标准的流程:

  1. 创建数据库及用户
  2. 给用户添加所创建数据库的所有权限,包括远程登陆
  3. 刷新并写权限
  4. 修改mysqld.cnf
  5. 重启mysql

创建数据库及用户

创建数据库名为wedo,并指定为utf8字符集

create database wedo default character set utf8 collate utf8_general_ci

创建用户,用户名为wedo,并指定密码

create user "wedo"@"%" identified by "2708poem";

开启远程登陆

给用户添加所创建数据库的所有权限,包括远程登陆

grant all privileges on wedo.* to 'wedo'@'%' identified by '123123' with grant option;

wedo.*表示把wedo数据库的所有权限赋给用户,privileges的英文意为权限的意思。
'wedo'@'%':表示wedo用户可以在任意设备上登陆%表示任意IP地址的意思,
identified by '123123':设置用户的密码
with grant option:表示把当前用户对wedo数据库的权限传给wedo用户。
比如说,当前用户为root,如果root拥有对wedo数据库的所有权限的话,wedo.*就会把所有权限都传给wedo用户;
如果root用户只拥有对wedo数据库的读权限的话,wedo.*就是只把读取权限传给wedo用户。

最好再确认一下Mysql的端口号是不是3306:

show global variables like 'port';

mysql5.7开启远程登陆

刷新并写权限

flush privileges;

最后确认一下是否成功写入:

--先切换到mysql数据库实例,这个数据库中存储着mysql的元数据
use mysql;
--查询wedo用户是否可以从任意位置登陆
select host, user from user;

mysql-select-user
我们可以发现只有wedo用户的host值为’%'说明设置正确。
然后就可以exit退出mysql命令行了。

修改mysqld.cnf

该配置文件的位置一般为:/etc/mysql/mysql.conf.d/mysqld.cnf

sudo vim /etc/mysql/mysql.conf.d/mysqld

bind-address = 127.0.0.1这个配置项注释掉,修改好的如下:
mysql-bind-address
保存退出。

重启mysql

重启命令为:

sudo systemctl restart mysql.service

可以查看一下mysql服务是否正常启动:

systemctl status mysql.service

mysql启动状态
至此氷可以在任何主机上连接此mysql了。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值