我在Rackspace有一个服务器。我想从本地机器命令行访问数据库。

我试过:

mysql -u username -h my.application.com -ppassword

但它给出了一个错误:

错误2003 (hy000): 无法连接MySQL服务器(10061)

导致此错误的原因是什么?如何连接到远程数据库?


当前回答

尝试Telnet 3306。如果它没有打开连接,要么有防火墙设置,要么服务器没有监听(或没有工作)。 在服务器上运行netstat -an查看服务器是否启动。 有可能您不允许远程连接。

详情见:

如何开启远程访问MySQL数据库服务器?

其他回答

试试这个,它的工作:

mysql -h {hostname} -u{username} -p{password} -N -e "{查询执行}"

尝试Telnet 3306。如果它没有打开连接,要么有防火墙设置,要么服务器没有监听(或没有工作)。 在服务器上运行netstat -an查看服务器是否启动。 有可能您不允许远程连接。

详情见:

如何开启远程访问MySQL数据库服务器?

这个在mysql 8中为我工作,将主机名与您的主机名和port_number与您的port_number替换,如果他不是root,您也可以更改您的mysql_user

      mysql --host=host_name --port=port_number -u root -p

更多资料请点击此处

必须检查对3306端口的传入访问是否被防火墙阻止。

编辑my.cnf文件:

我们 /etc/my.cnf:

确保:

bind-address = YOUR-SERVER-IP

如果你有这一行:

skip-networking

确保注释它:

# skip-networking

不要忘记重新启动:

/etc/init.d/mysqld restart