如何通过MySQL数据库代码设置允许SQL数据库远程访问本机数据库
作者: 张国军_Suger
开发工具与关键技术:MySQL
有些时候我们需要远程访问MySQL数据库,下面总结了一些方法,希望可以帮到大家。
一、多方授权法。
1、允许用户名(U)为’root’和密码(P)为mypassword的用户从任何主机连接到mysql服务器。
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;//赋予任何主机访问数据的权限
FLUSH PRIVILEGES;//修改生效
EXIT;//退出MySQL服务器
2、允许用户名(U)为’root’和密码(P)为mypassword从MySQL主机地址(M)即IP为192.168.2.104的主机连接到mysql服务器。
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.2.104' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;//赋予任何主机访问数据的权限
FLUSH PRIVILEGES;//修改生效
EXIT;//退出MySQL服务器
3、允许用户名(U)为’root’和密码(P)为mypassword从MySQL主机地址(M)即IP为192.168.2.104的主机连接到mysql服务器的demo数据库。
GRANT ALL PRIVILEGES ON demo.* TO 'root'@'192.168.2.104' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;//赋予任何主机访问数据的权限
FLUSH PRIVILEGES;//修改生效
EXIT;//退出MySQL服务器
二、改表(mysql)法。
MySQL默认是不支持远程连接的,只能本地(localhost)连接。这时唯有先在MySQL主机地址(M)上使用localhost或127.0.0.1,用户名(U)和密码(P)都输入正确,还有端口(O)使用3306登入MySQL后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从"localhost"改称"%"
USE mysql;
UPDATE USER SET HOST = '%' WHERE USER = 'root';
SELECT HOST, USER FROM USER;