dnf資料庫備份&遷移

它的一天發表於2024-05-26

使用mysql自帶的mysqldump備份

mysqldump -ugame -p --databases d_channel d_guild d_taiwan d_taiwan_secu d_technical_report taiwan_billing taiwan_cain taiwan_cain_2nd taiwan_cain_auction_cera taiwan_cain_auction_gold taiwan_cain_log taiwan_cain_web taiwan_game_event taiwan_login taiwan_login_play taiwan_main_web taiwan_mng_manager taiwan_prod taiwan_pvp taiwan_se_event taiwan_siroco test > ~/dnfSql_20240526.sql

注意-u那裡改成自己的資料庫使用者名稱,預設是game;回車後資料資料庫密碼,預設是uu5!^%jg;回車確認後等一會就備份完了,備份的檔案在使用者家目錄下,名字為dnfSql_20240526.sql

恢復

mysql -ugame -p # 登入資料庫
source ~/dnfSql_20240526.sql; # 恢復方式1
mysql -ugame -p < ~/dnfSql_20240526.sql # 恢復方式2

這樣備份有個好處就是,不管是在什麼系統之間遷移資料都適用。而且匯出的sql檔案壓縮後體積很小。實測新部署的伺服器初始資料庫匯出壓縮完只有2M,我玩了很久的存檔也才30幾M。
可能會遇到備份報錯,說什麼表不存在啊之類的,可以在資料庫執行這個檢視需要備份的所有庫名

SHOW DATABASES WHERE `Database` NOT IN ('information_schema', 'mysql', 'performance_schema', 'sys');

相關文章