
Mysqldump 抱怨我從未指定過的命令列選項。我沒有 shell 別名,也沒有自訂 .my.cnf 檔案集。我究竟做錯了什麼?
使用--database
長選項:
$ mysqldump --user cloud -p --database cloud > backup.mysqldb
Warning: Using unique option prefix database instead of databases is deprecated and will be removed in a future release. Please use the full name instead.
Warning: mysqldump: ignoring option '--databases' due to invalid value 'cloud'
Warning: Using unique option prefix database instead of databases is deprecated and will be removed in a future release. Please use the full name instead.
使用--databases
長選項:
$ mysqldump --user cloud -p --databases cloud > backup.mysqldb
Warning: Using unique option prefix database instead of databases is deprecated and will be removed in a future release. Please use the full name instead.
Warning: mysqldump: ignoring option '--databases' due to invalid value 'cloud'
使用--all-databases
長選項:
$ mysqldump --user cloud -p --all-databases > backup.mysqldb
Warning: Using unique option prefix database instead of databases is deprecated and will be removed in a future release. Please use the full name instead.
Warning: mysqldump: ignoring option '--databases' due to invalid value 'cloud'
僅使用資料庫名稱:
$ mysqldump --user cloud -p cloud > backup.mysqldb
Warning: Using unique option prefix database instead of databases is deprecated and will be removed in a future release. Please use the full name instead.
Warning: mysqldump: ignoring option '--databases' due to invalid value 'cloud'
最後,指定什麼都沒有:
$ mysqldump --user cloud -p > backup.mysqldb
Warning: Using unique option prefix database instead of databases is deprecated and will be removed in a future release. Please use the full name instead.
Warning: mysqldump: ignoring option '--databases' due to invalid value 'cloud'
答案1
在.my.cnf
選項檔案中,您可能為所有用戶端指定了資料庫參數,但 mysqldump 不喜歡該參數。因此,請勿在選項檔案中列出所有客戶端的該參數。
例如,以下是我解決該問題的方法,以便 mysql 用戶端在不指定資料庫的情況下仍然可以工作(預設名稱為“walkin”)並且 mysqldump 不會抱怨:
前:
$ 貓 ~/.my.cnf [客戶] 使用者=root 主機=127.0.0.1 密碼=“root” 資料庫=步行
後:
$ 貓 ~/.my.cnf [客戶] 使用者=root 主機=127.0.0.1 密碼=“root” [mysql] 資料庫=步行