转自 http://www.cnblogs.com/yuejin/archive/2013/11/12/3419467.html
1、打开mysql.exe(MySQL Command Line Client),输入密码
2、输入:use mysql;
3、查询host输入: select user,host from user;
4、创建host(如果有"%"这个host值,则跳过这一步)
如果没有"%"这个host值,就执行下面这两句:
mysql> update user set host='%' where user='root';
mysql> flush privileges;
5、授权用户
(1)任意主机以用户root和密码pwd连接到mysql服务器
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root的密码' WITH GRANT OPTION;
mysql> flush privileges;
(2)指定IP为(如192.168.1.100)的主机以用户tuser和密码tpwd连接到mysql服务器
mysql> GRANT ALL PRIVILEGES ON *.* TO 'tuser'@'192.168.1.100' IDENTIFIED BY 'tpwd' WITH GRANT OPTION;
mysql> flush privileges;
如果经过以上还是无法远程访问,那么可能就是Win防火墙的问题了
解决方法如下:
选择:网络->windows 防火墙->高级设置->入站规则
然后点击右上角的新建规则
选择"端口" 下一步,输入3306端口,加入规则,
然后再次点击新建规则
选择"程序" 找到mysql bin下的启动路径【mysqld.exe】,加入规则
然后外部访问mysql.成功!!!!