Mariadb 備份並不能使用 mysqldump ,要使用 mariadb-dump ,不然會出現下面這個錯誤:
假設 容器名稱 是 my_mariadb ,密碼是 mypassword ,輸出的檔名 all-databases.sql
bash: mysqldump: command not found
備份
docker exec 容器名稱 mariadb-dump --all-databases -uroot -p"密碼" > 檔名
假設 容器名稱 是 my_mariadb ,密碼是 mypassword ,輸出的檔名 all-databases.sql
docker exec my_mariadb mariadb-dump --all-databases -uroot -p"mypassword" > all-databases.sql
還原
在 linux 和 windows 上指令有點不一樣:Linux
docker exec -i 容器名稱 sh -c 'exec mariadb -uroot -p"密碼"' < ./檔名
docker exec -i my_mariadb sh -c 'exec mariadb -uroot -p"mypassword"' < ./all-databases.sql
Windows (PowerShell)
Get-Content ./檔名 | docker exec -i 容器名稱 sh -c 'exec mariadb -uroot -p"密碼"'
Get-Content ./all-databases.sql | docker exec -i my_mariadb sh -c 'exec mariadb -uroot -p"mypassword"'
留言
張貼留言
如果有任何問題、建議、想說的話或文章題目推薦,都歡迎留言或來信: a@ruyut.com