admin管理员组文章数量:1794759
Windows上远程访问MySQL数据库
最近有个项目,多台机器需要共享条码信,又不想额外写一个程序去进行调度,就想到用远程访问数据库的方式来实现多台机器之间的条码共享。
数据库安装完成后,默认的localhost登录。远程电脑如果要访问肯定是需要添加IP地址的。(代码为Python3)
接下来讲重点,就是主机数据库设置(上面代码可以看出如果把host放到config里面,可以保证每台机的代码都一样)
1.Win+R,打开输入cmd,打开命令行
2.将工作目录切换到MySQL的bin下,输入cd加bin路径后回车:cd C:\\Program Files\\MySQL\\MySQL Server 5.5\\bin
3.输入:mysql -u root -p
回车后输入mysql的登录密码(如果提示mysql不是内部指令,就证明上面的路径不对,需要找到MySQL在你电脑上的安装位置)
4.接下来就是数据库里面的指令操作
use mysql; 切换数据库
update user set host = '%' where user = 'root';
root表示想要被连接的数据库的用户名 其中“%”表示允许所有机器能访问root用户
select host, user from user;
flush privileges; 命令本质上的作用是将当前user和privilige表中的用户信/权限设置从mysql库(MySQL数据库的内置库)中提取到内存里。MySQL用户数据和权限有修改后,希望在"不重启MySQL服务"的情况下直接生效,那么就需要执行这个命令。
5.关闭防火墙,或者防火墙过滤3306的端口
6.理论上,此时应该是可以了,网上其他教程,基本到这里也就停止了,假如依然不行,就得看下面的命令了,因为我的电脑此时却是不行,也没找到原因。下面就列下解决办法吧。
7.依然不行的解决办法
grant all privileges on *.* to 'root'@'10.0.0.13' identified by '123'
这里要好好说下,网上很多教程,只有前面一截grant all privileges on *.* to 'root'@'10.0.0.13',对于需要输入密码的情况来说,都不好使,后面这个尾巴 identified by '123' 是密码的意思,就是另外的电脑远程登录进来需要输入的密码。我自己试的时候,N次没成功,就是因为这个密码不对,我主机设置的密码是123,我给从机按照网上的指令给’root‘,我以为从站也可以按照123的指令进来,不行,从站只能按照identified by后面跟的内容进来,后面改成’123‘,问题就解决了。
版权声明:本文标题:Windows上远程访问MySQL数据库 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686768091a100203.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论