python+mysql+pymysql
我在pycharm上使用pymysql模块来连接操作MySQL数据库,在我电脑上没啥问题,现在我想在其他电脑上连我电脑的MySQL数据库db = pymysql.connect(host="localhost", user="****", passwd="****", db="****")
应该是要将这个host改成我电脑的IP地址,应该没错吧.....
遭遇错误:
我电脑是笔记本,连的WiFi,查IP地址时,以太网是断开的,是没有电缆宽带什么的
我尝试打开网络适配器,点开我连接的WiFi的详细信息,用这个IPv4地址来代替上面的localhost
可惜报错,报错信息:
pymysql.err.OperationalError: (1130, "PC201910271237M' is not allowed to connect to this MySQL server")
问题:
是不是一定要连网线什么的才可以?还是我这台只连了wifi的电脑,可以在其他电脑上用pymysql模块来连接操作我电脑的MySQL数据库?
或者直接跟我说我应该怎么办才能在其他电脑上连接操作我的MySQL数据库,主要就是这个问题。
跪求!!!! 连同一个wifi 或者你连另一台的热点 或者另一台连你的热点 kogawananari 发表于 2021-7-17 16:36
连同一个wifi 或者你连另一台的热点 或者另一台连你的热点
我现在还在我自己的电脑上使用,只是将localhost改成我连的WiFi的IPv4地址就报错了 本帖最后由 Wirror 于 2021-7-17 17:20 编辑
host是改成ip地址了吗?user是什么?我也在尝试从其他电脑连接数据库,但是遇到连接超时的问题 Wirror 发表于 2021-7-17 17:19
host是改成ip地址了吗?user是什么?我也在尝试从其他电脑连接数据库,但是遇到连接超时的问题
host改ip地址了,就是我看网上查的IP地址都是以太网的,我改的这个是在适配器点这个wifi的详细信息里的IPv4地址
user就是root
之前
db = pymysql.connect(host="localhost", user="root", passwd="***", db="***")
我就改了个host就报错了 1) 先看看mysql监听端口,cmd下:netstat -an
2) 检查防火墙设置,是否放开了mysql的端口。
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
应该是root用户没有远程链接的权限。增加权限即可。
mysql里去执行以上sql语句,先执行第一条,授权,‘mypassword’改成远程连接的密码(自己定)
然后执行第二条,刷新权限,生效 redforce 发表于 2021-7-17 19:46
应该是root用户没有远程链接的权限。增加权限即可。
mysql里去执行以上sql语句,先执行第一条,授权,‘ ...
请问一下,我的操作和你的是一样的吗?
我是打开mysql.user并把root前面的localhost修改成% 然后我发现需要重启电脑才管用,按你的意思是刷新一下权限就可以了吗?? wp231957 发表于 2021-7-17 20:55
请问一下,我的操作和你的是一样的吗?
我是打开mysql.user并把root前面的localhost修改成% 然后我发 ...
去mysql里执行我给的那sql语句,不要直接修改,会出问题的。你那个localhost表示允许本机连接。执行sql语句后,刷新权限就可以了,不需要重启 本机cmd里mysql -uroot -p进mysql客户端,然后执行
或者客户端工具里去执行都可以 来学习一下 host 不一定要改,因为host名,最终是靠IP 和端口(你可以直接写host='192....IP')。 有时改了host,反而会造成一些不必要的麻烦。。
最好清楚明白自己在干什么,再修改host。。
改的时候,要确保拼写host名和IP 正确,小心检查。。
连接建议:
1. 先 确认从其他机子上 ping mysql所在机子的ip 是否通。
(若ping不通可能是防火墙,也可能是MySQL服务没启动或不正确,或其他原因)
2. 确认 所使用的mysql账号 权限是否足够,确保足够,可以修改权限,如
授予全部权限给root用户,且允许在任意IP('%')连接MySQL,的SQL命令是
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypassword' ;
FLUSH PRIVILEGES;# 刷新权限而生效(有时好像刷新不用也行)
redforce 发表于 2021-7-17 19:46
应该是root用户没有远程链接的权限。增加权限即可。
mysql里去执行以上sql语句,先执行第一条,授权,‘ ...
报错了ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IDENTIFIED BY '111' WITH GRANT OPTION' at line 1{:9_220:} 在cmd中运行 ipconfig /all ,输出截图发过来,我告诉你你的IP地址
页:
[1]