我試圖用mysqldump
傾倒一個模式,它主要工作,但我遇到了一個好奇:在-p
或--password
選項好像是做比設定的密碼(如man
頁面和--help
輸出說其他的東西這應該)。mysqldump --password是否真的做了它所說的?
具體而言,它看起來像是在做什麼在這裏指示:http://snippets.dzone.com/posts/show/360 - 即設置數據庫轉儲。
爲了支持我有點古怪的說法,我可以告訴你,如果我沒有指定--password
(或-p
)選項,那麼該命令將打印使用語句並退出並顯示錯誤。如果我指定它,系統會立即提示輸入密碼(!),然後轉儲--password
選項中指定的數據庫(或者在通常情況下會給出錯誤,指出密碼與指定的數據庫名稱不匹配) 。
這裏的成績單:
$ mysqldump -u test -h myhost --no-data --tables --password lose Enter password: -- MySQL dump 10.10 mysqldump: Got error: 1044: Access denied for user 'test'@'%' to database 'lose' when selecting the database
那麼,是什麼原因呢?這是否應該這樣工作?它肯定沒有意義,也不符合官方文件。最後,如果這只是它的工作方式,我該如何指定在自動化作業中使用的密碼?使用expect
???
我正在使用mysqldump Ver 10.10 Distrib 5.0.22, for pc-linux-gnu (i486)
。
刪除了通用標籤,增加了gotcha – Sklivvz 2008-09-29 15:01:45