Php 拒绝用户访问';用户'@';ip地址';

Php 拒绝用户访问';用户'@';ip地址';,php,mysql,Php,Mysql,正在尝试从远程服务器访问MYSQL。我有3db(db1,db2,db3) db2&db3在同一台服务器中,db1在我的旧服务器中 试图使用mysql\u connect('ip','user','pwd')从新服务器连接db1,但它显示用户'user'@'ip-address'的访问被拒绝的消息 db1和db2都是以相同的方式连接的 解决这个问题的办法是什么?我尝试了一些权限分配,但不起作用。首先将db1上的权限授予您的用户,您可以使用下面的命令- grant select, insert, u

正在尝试从远程服务器访问MYSQL。我有3db(
db1,db2,db3

db2
&
db3
在同一台服务器中,
db1
在我的旧服务器中

试图使用
mysql\u connect('ip','user','pwd')
从新服务器连接
db1
,但它显示
用户'user'@'ip-address'的访问被拒绝的消息

db1和db2都是以相同的方式连接的


解决这个问题的办法是什么?我尝试了一些权限分配,但不起作用。

首先将db1上的权限授予您的用户,您可以使用下面的命令-

grant select, insert, update, delete on db1.* to myuser@'my_server_ip' identified by 'my_pass';
注意:您可以根据需要在此处添加/删除权限my_server_ip表示您尝试连接数据库的位置

第二件事,当您试图远程连接db1时,请在连接字符串中包含主机ip。

您必须启用“远程访问”

要执行此操作,请执行以下步骤:

  • 找到my.cnf文件并将其打开:
  • vi/etc/my.cnf

  • 在[mysqld]之后,只需删除或注释
    跳过网络
    命令

  • 添加以下命令:


  • bind address=YOUR-SERVER-IP

    此问题通过授予user@host.

    将**上的所有权限授予“用户名”@“%”,该用户名由带有授予选项的“密码”标识
    
    通过授予选项将**上的所有权限授予由“密码”标识的“用户名”@“IP地址”


    注意:不要避免使用“密码”,如果您的用户在db1中设置了密码

    ,您必须允许您的新服务器ip与此用户连接,您的db1可能被配置为仅允许”use@localhost“…为mysql主机添加一个通配符“%”项。如果您输入的用户名不正确,请使用mysql_*函数进行检查。他们被弃用了。错误消息告诉您数据库服务器凭据设置不正确。可能存在重复的