Mysql
mysqldump 是否返回狀態?
我正在創建一個使用 mysqldump 實用程序備份 mysql 數據庫的腳本。我正在外殼“sh”中編寫此腳本。我想在腳本中擷取 mysqldump 的輸出狀態(即 mysqldump 命令是否失敗或成功),以便我可以報告腳本是否成功。
- mysqldump 是否返回輸出狀態?
- 有人可以給我有關如何執行此操作的說明嗎?
mysqldump 返回
0 for Success 1 for Warning 2 for Not Found
它還會將擴展的錯誤消息列印到 stderr,例如
mysqldump: Got error: 1049: Unknown database 'dbname' when selecting the database
您可以像這樣檢查返回的值
mysqldump -u DBuser -pDBpassword database >database.sql 2>database.err if [ "$?" -eq 0 ] then echo "Success" else echo "Mysqldump encountered a problem look in database.err for information" fi
轉儲完成後檢查 $? 殼變數。如果它是 0 - 一切都很好。否則 - 錯誤。
# mysqldump -u aaa -d msf>/dev/null mysqldump: Got error: 1045: Access denied for user 'aaa'@'localhost' (using password: YES) when trying to connect # echo $? 2