最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
MySQL开放远程连接权限代码两种方法
时间:2022-06-30 编辑:袖梨 来源:一聚教程网
本篇文章小编给大家分享一下MySQL开放远程连接权限代码两种方法,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
方法如下:
首先,检查要连接数据库的服务器的防火墙等是否关闭,检查与服务器连接是否通畅(方法:在cmd控制台中 输入 ping ip地址)
其次通过网上查找有两种方法:
1,改表法。
可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"
mysql -u root -pvmwaremysql>use mysql; mysql>update user set host = '%' where user = 'root'; mysql>select host, user from user;
2,授权法。
在安装mysql的机器上运行:
1、d:mysqlbin>mysql -h localhost -u root
//这样应该可以进入MySQL服务器
2、mysql>GRANT ALL PRIVILEGES ON *.*TO'root'@'%'WITHGRANTOPTION
//赋予任何主机访问数据的权限
3、mysql>FLUSH PRIVILEGES
//修改生效
4、mysql>EXIT
//退出MySQL服务器
这样就可以在其它任何的主机上以root身份登录啦。
自己测试两种方法都不行,感觉很奇怪,于是自己测试:
找到MySQL的文件位置,在cmd中输入 cd mysql.exe的文件位置(一般在MySQL安装目录下bin文件下)
输入mysql -u root -p输入登录密码登录MySQL
在MySQL里直接输入GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION,会出现如下图
这里是由于没有以英文分号结尾导致的。
输入带分号的语句试试:
提示未找到行。
我决定先还是采用第一种方法,按照第一种方法的代码,输入:
mysql -u root -p //这是登录 mysql>use mysql; // mysql>update user set host = '%' where user = 'root'; // mysql>select host, user from user; //
执行结果如下图
连接远程MySQL,还是没连接上,于是再试试第二种方式
输入:
d:mysqlbin>mysql -h localhost -u root mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION; mysql>FLUSH PRIVILEGES; mysql>EXIT;
注意这里一定要以英文分号结尾!!!
执行结果如下图
这时没有上面的ERROR 1133错误了,经过测试,已经能连接到远程服务器了。
总的执行步骤如下:
-
上一个: MySql存储过程循环代码使用解析
相关文章
- MySQL登录、访问及退出操作解析 10-18
- sql语句 update字段null不能用is null问题解析 09-28
- SQL Server ISNULL 不生效原因及解决分析 09-28
- 关于if exists的用法及说明分析 09-28
- Mysql删除某个字段的最后四个字符 09-26
- mysql多个字段最大最小值介绍 09-26