从命令行访问mysql远程数据库
我有一个带有机架空间的服务器。我想从本地计算机命令行访问数据库 我试着说:从命令行访问mysql远程数据库,mysql,shell,mysql-error-2003,Mysql,Shell,Mysql Error 2003,我有一个带有机架空间的服务器。我想从本地计算机命令行访问数据库 我试着说: mysql -u username -h my.application.com -ppassword 但它给出了一个错误: 错误2003(HY000): 无法连接到“my.application.com”(10061)上的MySQL服务器 导致此错误的原因是什么?如何连接到远程数据库 请尝试telnet 3306。如果未打开连接,则可能是防火墙设置或服务器未侦听(或不工作) 在服务器上运行netstat-an,查看服
mysql -u username -h my.application.com -ppassword
但它给出了一个错误:
错误2003(HY000):
无法连接到“my.application.com”(10061)上的MySQL服务器
导致此错误的原因是什么?如何连接到远程数据库
telnet 3306
。如果未打开连接,则可能是防火墙设置或服务器未侦听(或不工作)
netstat-an
,查看服务器是否已启动
必须检查对端口3306的传入访问是否被防火墙阻止。编辑my.cnf文件:
vi/etc/my.cnf
:
确保:
bind address=YOUR-SERVER-IP
如果你有电话:
跳过联网
请务必对其进行评论:
#跳过网络
不要忘记重新启动:
/etc/init.d/mysqld restart
要直接登录到远程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控制台。尝试此命令
mysql-uuser-hhostname-PPORT-ppassword
我遇到了类似的情况,后来当使用命令输入主机的mysql端口时,问题就解决了。您应该将密码加上“p”
mysql -u root -u 1.1.1.1 -p'MyPass'
这个解决方案对我有效: 在您的远程计算机上(例如:295.13.12.53)可以访问您的目标远程计算机(运行mysql服务器) 解释:
ssh -f -L your_ssh_mashine_ipaddress:your_ssh_mashine_local_port:target_ipaddress:target_port user@your_ip_address -N
您的\u ssh\u mashine\u ip地址-它不是本地ip地址,而是ip地址
在本例中为295.13.12.53
您的\u ssh\u mashine\u本地\u端口-这是自定义端口,而不是22,在本例中是3306
target_ipaddress-您尝试转储数据库的计算机的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
将询问密码,输入您的密码,您已连接。
希望这有帮助。只需在ubuntu的终端上安装:
mysql -u username -h host -p
现在按回车键
终端将询问您密码,输入密码,然后您进入数据库服务器我假设您的机器上安装了MySQL。填写缺失的详细信息后,执行以下命令:
mysql -uUSERNAME -pPASSWORD -hHOSTNAME -P3306
我也犯了同样的错误。 但通过在远程mysql服务器ans上创建新的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
以下是全文:
试试这个,它的工作原理是:
mysql-h{hostname}-u{username}-p{password}-N-e“{query to execute}”如果您不想使用ssh隧道,在my.cnf或mysqld.cnf中,您必须更改127.0.0.1本地ip地址(192.168.1.100),才能通过Lan进行访问。示例如下:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
在my.cnf或mysqld.cnf中搜索绑定地址
bind-address = 127.0.0.1
并将127.0.0.1更改为192.168.1.100(本地ip地址)
若要应用所做的更改,必须使用next命令重新启动mysql服务器
sudo /etc/init.d/mysql restart
修改lan访问的用户root(在您想要访问的远程服务器中运行下面的查询)
如果只想从特定ip地址进行访问,请将根“@”更改为根“@”(ip地址或主机名)
CREATE USER 'root'@'192.168.1.100' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.100' WITH GRANT OPTION;
FLUSH PRIVILEGES;
然后您可以连接:
nobus@xray:~$ mysql -h 192.168.1.100 -u root -p
在ubuntu 18.04服务器上测试对于Mac,请使用以下命令:
mysql -u app -h hostaddress -P port -D dbname -p
然后在提示时输入密码。mysql服务器通常配置为仅侦听本地主机(127.0.0.1),web应用程序在本地主机上使用mysql服务器 如果这是您的情况,但您拥有对服务器的SSH访问权,那么您可以创建一个SSH隧道并通过它进行连接 在本地计算机上,创建隧道
ssh -L 3307:127.0.0.1:3306 -N $user@$remote_host
(本例使用本地端口3307,以防mysql也在本地计算机上运行,并使用标准端口3306)
现在你应该可以和ale联系了
mysql -u $user -p -h 127.0.0.1 -P 3307
有一个简单的命令
mysql -h {hostip} -P {port} -u {username} -p {database}
范例
mysql -h 192.16.16.2 -P 45012 -u rockbook -p rockbookdb
这一个在mysql 8中对我有效,用你的主机名替换
主机名
,用你的端口号替换端口号
,如果你的mysql用户不是root用户,你也可以更改他
mysql --host=host_name --port=port_number -u root -p
如果您使用的是windows,请尝试使用Visual Studio代码和MySQL插件,这是在windows计算机上访问MySQL数据的一种简单而集成的方法。以及列出的数据库表,可以执行任何自定义查询。
10061
=连接拒绝绑定地址=YOUR-SERVER-IP。这里我需要提及的IP是远程服务器IP吗?@user1986299不,您需要服务器的IP(不是远程),您应该授予自己访问权限。。。通过键入mysql从本地服务器登录您的数据库,然后:将**上的所有权限授予由“您的密码”标识的“root”@“
永远不要授予“root”@“%”这是一个巨大的安全问题不@阿尔法辛这是一个小的调整与深刻的影响,谢谢你mysql-u testuser-h 192.168.**-P 3306-P password
用于指定需要添加的数据库名称-D。mysql-u{username}-p{password}-h{remote server ip}-D{DB name}如果我们需要指定特定端口怎么办?在MacOS High Sierra版本10.13.3的终端中不起作用-p
之后没有插入空格如果这是针对用户在控制台键入的情况,您应该很容易避免在命令行中将密码作为未加密文本传递
mysql -u $user -p -h 127.0.0.1 -P 3307
mysql -h {hostip} -P {port} -u {username} -p {database}
mysql -h 192.16.16.2 -P 45012 -u rockbook -p rockbookdb
mysql --host=host_name --port=port_number -u root -p