Backup
從 FULL MYSQL Server 備份文件中提取一個 MySQL 數據庫
我有一個小型共享 Windows 伺服器,我在上面安裝了 MySQL 5.1 引擎來託管我的使用者的 mysql 數據庫。
我每天通過在計劃任務中將此腳本作為批處理文件執行來備份完整的 MySQL 數據庫:
"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqldump.exe" -uroot -p"**********" --force --flush-logs --all-databases > c:\dbbackup\alldatabases.sql
因此**alldatabases.sql 將是一個 SQL 文件,其中包含 MySQL 伺服器的完整數據,**可以在所有數據庫失去或遷移到另一台伺服器的情況下恢復。
我從來沒有從這個“alldatabases.sql”備份文件中提取過一個特定的mysql數據庫,我對此一無所知。
**必須白痴的解決方案是在另一台伺服器上恢復這個大備份文件,然後簡單地從特定數據庫創建一個單獨的備份。
你能幫我從這個大備份文件中提取一個特定的 MySQL 數據庫嗎? 假設 MySQL 數據庫名稱是 JOOMLAdb
**** 另外您對更改我的備份腳本有什麼想法嗎,因此我可以為每個數據庫單獨備份而不是擁有一個大的備份文件(數據庫會隨著時間的推移而增加/減少,我們沒有可用的修復列表數據庫)感謝您的關心**
最好的祝福
您的相同問題似乎在這裡得到了回答:
https://stackoverflow.com/questions/2342356/import-single-database-from-all-databases-dump
就改進的備份腳本而言,這是我目前使用了幾年的內容,它很震撼:
白痴解決方案 1 在某個臨時機器上恢復整個數據庫,然後轉儲到單個數據庫上。
請務必正確測試單個數據庫還原,這可能是主機/使用者權限的問題。
解決方案 2,我剛剛編寫了一個執行單個數據庫轉儲還原的腳本。做起來相當簡單。我會把程式碼發給你,但我寫的是 centos,它很可能無法在你的 Windows 上執行。