我被困在看似简单的远程连接到MySQL的任务中。我继承了服务器,所以不知道它是如何安装的。查看了/etc/my.cnf (据我所知系统上唯一的my.cnf )并找到了
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid我得到的错误是
“由于访问被拒绝而无法连接到主机123.456.789.000。请检查您的用户名和密码,并确保允许从当前位置访问。MySQL说:拒绝用户'my_ user _name'@'098-765-432-111-mydomain.com‘(使用密码: YES)”。
我所做的事情:我将bind= 0.0.0.0添加到my.cnf并重新启动服务器。不走运。
远程传送到3306端口上的服务器。收到了大量的短信,这告诉我端口是可访问的。
停止服务器,并尝试再次连接(以查看我将得到什么错误)。令人惊讶的是,没有得到一个超时-得到了与上面相同的错误。
下面是从mysql.user中选择用户、主机、密码的内容,其中User =‘web_ user’;
+--------------+-----------------------+------------------+
| User | Host | Password |
+--------------+-----------------------+------------------+
| web_app_user | % | 54b4540f7c238486 |
+--------------+-----------------------+------------------+发布于 2010-08-05 16:58:14
很久以前,我也遇到过同样的问题,因为我的用户没有远程权限,基本上当您登录MySQL时,您以username@localhost登录,但是当您远程处理时,您需要创建一个名为username@you-isp.com的用户,并使用GRANT方法给他正确的权限,所有这些都可以通过phpmyadmin完成,但遗憾的是,我不记得在哪里.
发布于 2010-08-05 16:58:40
很多时候,登录被限制为本地连接。您需要查看用户权限,并且可能需要添加一条记录,允许该登录名和密码从远程位置连接。
在我的web服务器上,为了安全起见,我总是将登录限制在本地主机上。
https://stackoverflow.com/questions/3417132
复制相似问题