黑马程序员技术交流社区

标题: 【广州python】开启远程访问MySQL权限,允许远程访问 [打印本页]

作者: xianqiuhua    时间: 2018-7-5 13:53
标题: 【广州python】开启远程访问MySQL权限,允许远程访问
本帖最后由 xianqiuhua 于 2018-7-5 17:33 编辑

开启远程访问MySQL权限,允许远程访问

我们在自己电脑上远程登录数据库会遇到以下错误



原因是MySQL默认是不允许远程访问。如果我们要实现远程访问,就得要去修改远程服务器上MySQL的配置文件 mysqld.cnf
远程服务器终端输入命令:
[Shell] 纯文本查看 复制代码
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

bind-address = 127.0.0.1  这行注释,再保存退出。重启MySQL服务:
[Shell] 纯文本查看 复制代码
sudo service mysql restart





我们回到自己电脑再次登录,又出现以下错误:



原因是安装MySQL时候root用户设置只允许本地登录。
登录mysql后,依次输入以下命令:
[SQL] 纯文本查看 复制代码
use mysql
select host ,user,authentication_string from user;



其中host表示主机,user表示用户,authentication_string表示加密后的密码。

我们可以看到root用户对应的host是localhost,表示root只允许在本地登录。
我们要想远程访问就得把localhost改成 %,一般我们不会修改root的设置,所以就创建一个新的用户用来远程访问。
创建语法:grant 权限列表 on 数据库 to '用户名'@'访问主机' identified by '密码';
[SQL] 纯文本查看 复制代码
grant all privileges on *.* to 'myroot'@'%' identified by 'myroot';




我们再用新创建的用户登录就可以实现远程访问了。








欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2