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

我试过:

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

但它给出了一个错误:

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

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


当前回答

我也犯了同样的错误。 但发现它有用的是在远程mysql服务器上创建新的mysql用户,然后连接。在远程服务器上执行以下命令:

CREATE USER 'openvani'@'localhost' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'openvani'@'localhost WITH GRANT 
OPTION;
CREATE USER 'openvani'@'%' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'openvani'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

现在你可以用下面的命令连接远程mysql。

mysql -u openvani -h 'any ip address'-p

以下是全文:

http://openvani.com/blog/connect-remotely-mysql-server/

其他回答

如果端口为默认值,则某些版本要求您尝试连接的数据库名称。

mysql -u <<your username>> -h <<your host>> <<your db name >> -p

这将提示密码,然后输入您的密码。如果端口不是默认的3306 然后:

mysql -u <<your username>> -h <<your host>> -P <<your port>> <<your db name >> -p

这个解决方案对我很有效:

在您的远程计算机(例如:295.13.12.53)上可以访问您的目标远程计算机(运行mysql服务器)

ssh -f -L 295.13.12.53:3306:10.18.81.36:3306 user@295.13.12.53

解释道:

ssh -f -L your_ssh_mashine_ipaddress:your_ssh_mashine_local_port:target_ipaddress:target_port user@your_ip_address -N

Your_ssh_mashine_ipaddress -它不是本地IP地址,而是IP地址 在本例中,SSH到295.13.12.53

Your_ssh_mashine_local_port -这是自定义端口而不是22,在本例中是3306。

target_ipaddress -要转储DB的机器的ip地址。

target_port - 3306这是MySQL服务器的真实端口。

user@your_ip_address -这是您连接的SSH mashine的SSH凭据

一旦所有这些都完成了,然后回到你的机器,这样做:

mysqldump -h 295.13.12.53 -P 3306 -u username -p db_name > dumped_db.sql

会询问密码,输入你的密码和你连接。 希望这能有所帮助。

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

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

更多资料请点击此处

试试这个命令mysql -uuser -hhostname -PPORT -ppassword。

我也遇到过类似的情况,后来当mysql port for host输入命令时,问题就解决了。

我也犯了同样的错误。 但发现它有用的是在远程mysql服务器上创建新的mysql用户,然后连接。在远程服务器上执行以下命令:

CREATE USER 'openvani'@'localhost' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'openvani'@'localhost WITH GRANT 
OPTION;
CREATE USER 'openvani'@'%' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'openvani'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

现在你可以用下面的命令连接远程mysql。

mysql -u openvani -h 'any ip address'-p

以下是全文:

http://openvani.com/blog/connect-remotely-mysql-server/