2013-04-08 65 views
68

我有一個Rackspace服務器。我想從我的本地機器命令行訪問數據庫。從命令行訪問遠程數據庫

我想這樣的:

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

但它給出了一個錯誤:

ERROR 2003 (HY000):

Can't connect to MySQL server on 'my.application.com' (10061)

是什麼原因導致這個錯誤,我怎麼能連接到遠程數據庫?

+0

'10061' = *拒絕連接* – 2013-04-08 06:24:16

+0

嘗試ping遠程主機。你能訪問端口3306嗎? – Devart 2013-04-08 06:24:25

+0

你可能需要在'-p'和'password'之間留一個空格 – alfasin 2013-04-08 06:24:33

回答

1

必須檢查傳入訪問端口3306是否是塊或不是由防火牆。

28

編輯my.cnf文件:

vi /etc/my.cnf

確保:

bind-address=YOUR-SERVER-IP

,如果你有行:

skip-networking

確保評論它:

#skip-networking

不要忘記重啓:

/etc/init.d/mysqld restart

+0

bind-address =您的服務器-IP。在這裏我需要提到的IP是遠程服務器IP? – user1986299 2013-04-08 06:35:20

+0

@ user1986299不,你需要你的服務器的IP(不是遠程的) – alfasin 2013-04-08 06:36:50

+0

我是錯誤的: 錯誤1045(28000):拒絕用戶root'@115.119.117.94'(使用密碼:是) – user1986299 2013-04-08 07:56:41

82

要直接登錄到遠程MySQL控制檯,使用下面的命令:

mysql -u {username} -p{password} -h {remote server ip} {DB name}

它會帶你到mysql控制檯直接切換到th e提到的數據庫。

+6

我必須用單引號括住密碼。即'mysql -u USERNAME -p'PASSWORD'-h REMOTE_SERVER_IP DB_NAME' – 2017-06-20 17:37:54

9

試試這個命令mysql -uuser -hhostname -PPORT -ppassword

我面臨類似的情況,後來當主機的mysql端口被輸入命令,它被解決了。

在您的遠程機器(例如:

+2

'mysql -u testuser -h 192.168。**。* -P 3306 -p password' forges – 2016-11-08 07:40:19

0

你應該用 'P'

mysql -u root -u 1.1.1.1 -p'MyPass' 
0

這個解決方案爲我把你的密碼295.13.12。53)訪問您的目標遠程計算機(運行MySQL服務器)

ssh -f -L 295.13.12.53:3306:10.18.81.36:3306 [email protected] 

解釋:

ssh -f -L your_ssh_mashine_ipaddress:your_ssh_mashine_local_port:target_ipaddress:target_port [email protected]_ip_address -N 

your_ssh_mashine_ipaddress - 它不是本地IP地址,這是IP地址使用ssh ,在這個例子中295.13.12.53

your_ssh_mashine_local_port - 這是自定義端口不圖22,在這個例子中它是3306

target_i paddress - 試圖轉儲數據庫的計算機的ip。

target_port - 3306這是MySQL服務器的真實端口。

用戶@ your_ip_address - 這是您連接

一旦全部完成,然後回到你的機器,並做SSH mashine SSH信用憑證的:

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

會詢問密碼,把你的密碼和你已連接。 希望這有助於。

9

只需在Ubuntu的把這個終端:

mysql -u username -h host -p 

現在點擊進入

終端會要求你輸入密碼,輸入密碼,你是到數據庫服務器

+1

這對我來說連接到亞馬遜網絡服務RDS MySQL – joshuakcockrell 2017-12-29 16:36:41

+0

謝謝!好人 – 2018-02-21 05:39:28

4

我假設你有MySQL的安裝在你的機器上。在填寫缺失的詳細信息後執行下面的命令:

mysql -uUSERNAME -pPASSWORD -hHOSTNAME -P3306 
0

我得到的是同樣的錯誤。 但通過在遠程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/

0

試試這個,它的工作:

的mysql -h {}主機名{-u用戶名-p} {}密碼 - N -e「{query to execute}」