如何开启MySQL远程访问权限 允许远程连接

如何开启MySQL远程访问权限 允许远程连接
当前问题共有如下(2)个解决方案
  • franzhong
    franzhong
    最近想做一个连接Mysql数据库的结口,目前先做一个连接Mysql的接口
    无奈连接时候出现权限不足情况
    Host 'XXX is not allowed to connect to this MySQL server ...
    当然连接本机的话,用localhost 或是127.0.0.1一点问题也没有
    但是是想测试远程连接
    所以把我改成这样$host = “192.168.1.1:3306”这样就当成了远程连接了
    //内网IP为192.168.1.1 且3306为mysql的默认端口

    解决的方法有两个(任意一个都行)
    一:修改数据库表
    二:授权法
    原文参考:PHP连接远程数据库权限问题的解决方案
    http://snowcoal.com/article/410.html
  • a121864695
    a121864695
    MySQL远程访问权限,允许远程连接的开启
    1、登陆mysql -u root -p 查看user表 www.2cto.com mysql> use mysql; Database changed mysql> select host,user,password from user; +--------------+------+-------------------------------------------+ | host | user | password | +--------------+------+-------------------------------------------+ | localhost | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E | | 192.168.1.1 | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E | +--------------+------+-------------------------------------------+ 2 rows in set (0.00 sec) 可以看到在user表中已创建的root用户。host字段表示登录的主机,其值可以用IP,也可用主机名, (1)有时想用本地IP登录,那么可以将以上的Host值改为自己的Ip即可。
    2、实现远程连接(授权法) 将host字段的值改为%就表示在任何客户端机器上能以root用户登录到mysql服务器,建议在开发时设为%。 update user set host = ’%’ where user = ’root’; 将权限改为ALL PRIVILEGES mysql> use mysql; Database changed mysql> grant all privileges on *.* to root@'%' identified by "root"; Query OK, 0 rows affected (0.00 sec) www.2cto.com mysql> select host,user,password from user; +--------------+------+-------------------------------------------+ | host | user | password | +--------------+------+-------------------------------------------+ | localhost | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E | | 192.168.1.1 | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E | | % | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E | +--------------+------+-------------------------------------------+ 3 rows in set (0.00 sec) 这样机器就可以以用户名root密码root远程访问该机器上的MySql.
    3、实现远程连接(改表法) use mysql; update user set host = '%' where user = 'root'; 这样在远端就可以通过root用户访问Mysql.
上一篇:数据库报错:mysql_fetch_array()expects parameter 1 to br resource,boolean given in
下一篇:mysql如何删除localhost