我在Rackspace有一个服务器。我想从本地机器命令行访问数据库。
我试过:
mysql -u username -h my.application.com -ppassword
但它给出了一个错误:
错误2003 (hy000): 无法连接MySQL服务器(10061)
导致此错误的原因是什么?如何连接到远程数据库?
我在Rackspace有一个服务器。我想从本地机器命令行访问数据库。
我试过:
mysql -u username -h my.application.com -ppassword
但它给出了一个错误:
错误2003 (hy000): 无法连接MySQL服务器(10061)
导致此错误的原因是什么?如何连接到远程数据库?
当前回答
如果端口为默认值,则某些版本要求您尝试连接的数据库名称。
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
其他回答
必须检查对3306端口的传入访问是否被防火墙阻止。
要直接登录远程mysql控制台,使用下面的命令:
mysql -u {username} -p'{password}' \
-h {remote server ip or name} -P {port} \
-D {DB name}
例如
mysql -u root -p'root' \
-h 127.0.0.1 -P 3306 \
-D local
在命令行文档中的“使用选项”中指定的-p后没有空格
它将通过切换到上述数据库直接带您到mysql控制台。
你的密码应该是'p'
mysql -u root -u 1.1.1.1 -p'MyPass'
编辑my.cnf文件:
我们 /etc/my.cnf:
确保:
bind-address = YOUR-SERVER-IP
如果你有这一行:
skip-networking
确保注释它:
# skip-networking
不要忘记重新启动:
/etc/init.d/mysqld restart
这个解决方案对我很有效:
在您的远程计算机(例如: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
会询问密码,输入你的密码和你连接。 希望这能有所帮助。