2009-11-11 57 views

回答

1

嘗試:

mysql -u yourdblogin -pyourdbpassword -h yourdbdomain.yourdomain.com yourdb -e "delete from table where x = y" 

不知道-e是正確的說法,但雖然是聲音。

+0

是的。這是我尋找的。 mysql -h myserver.net -umyname -pmypw mydb -e「select * from mytable」 – conandor 2010-04-09 06:03:36

1

只有在MySQL服務器上配置了TCP連接時,並且您已配置了用戶名和密碼才能遠程連接。

如果您檢查mysqldump文檔,您會發現-host選項允許您連接到遠程系統。

1

你可以嘗試這樣的事情:

mysql -u yourdblogin -pyourdbpassword -h yourdbdomain.yourdomain.com yourdb 

很抱歉,如果我誤解你的問題。

0

這樣做的具體方法是使用mysql提示連接到遠程計算機,然後與它執行查詢(其導致行被刪除的查詢。)

# mysql -u username -p -h remote.location.com 
mysql> USE `database_name`; 
mysql> DELETE FROM `table` WHERE id=1234; 

的DELETE FROM語法是SQL語法,並且它的WHERE部分允許您確切地指定要刪除的內容。

此外,如果您習慣這樣做,您很可能無法以「root」身份登錄,因爲默認情況下root不能遠程連接。 (您可以啓用此功能,但建議您另外創建一個管理員帳戶並使用該帳戶)。

請注意,代碼也可能會遠程刪除行,但它取決於語言和實現方式。

參考文獻:

+0

我可以在1行嗎?因爲我想用cron運行它 – conandor 2009-11-11 02:43:32

+0

你可以這樣做(別人發佈了一個長命令),但是在python/perl/ruby​​中編寫一個小腳本可能更有意義,因爲你可以添加錯誤處理或日誌記錄讓你知道它是否失敗。 – 2009-11-11 02:55:20

0

實際上,你可以使用任何MySQL客戶端應用程序連接到遠程服務器,不僅提供的命令行工具。

如果服務器允許TCP客戶端連接,則在本地或遠程運行腳本之間沒有區別。

如果MySQL服務器碰巧也是一個Web服務器,您可以使用像PHPMyAdmin這樣的軟件來完成它。一旦它在本地運行(與MySQL服務器相同的機器,而不是您的機器),您可以解決不接受外部TCP連接的問題(如果服務器是以這種方式配置的話)。