Mysql

備份 MySQL 伺服器

  • September 21, 2016

我想備份我們的 MySQL 伺服器上的所有數據庫、使用者等。

我遇到過這個命令mysqldump並相信我可以這樣使用它?(嘗試將遠端伺服器備份到我們的本地機器)

mysqldump -h web-server.com -u root -p root --all-databases > "/backups/mysql/`date +%Y%m%d`.sql"

然而:

  1. 我害怕在不知道發生了什麼的情況下執行它(我們在 MySQL 數據庫上有很多數據,我們不能失去它!)。所以第一個問題是:這會做我想要的嗎?登錄遠端伺服器(web-server.com例如位於)並將所有mysql數據庫備份到/backups/mysql本地機器上的路徑?
  2. 我不相信這也會在 MySQL 伺服器發生故障的情況下保持每個數據庫的所有使用者資訊完好無損。使用者資訊是否只是作為另一個數據庫儲存在 MySQL 數據庫中?還是伺服器本身的功能?在這種情況下,是否有其他方法可以備份數據庫以包含使用者數據?
  1. 是的,這會將所有數據庫的內容轉儲為一系列 INSERT sql 命令,以便您可以使用mysql < backup.sql. 純粹為了便於使用,我建議您按數據庫執行此操作,而不是使用--all-databases一個包含所有內容且不易搜尋的大文件。

您可能需要查看mysqldump手冊頁,看看是否有任何其他您想使用的選項。

2)使用者資訊和訪問控制儲存在mysql數據庫中;--all-databases確實包括那個。

引用自:https://unix.stackexchange.com/questions/38327