要 Backup MySQL DB 可以有好多種不同的方法,這次是使可比較可以 automate 的方法來進行 Backup 工作。
### mysqldump
mysqldump 其實是一個指令,用來連接 MySQL DB 並把輸出變成為一個 .sql 檔案備份。
以下的指令會完整的備份整個 DB 到 .sql 檔案內。
```sh
$ mysqldump -u {USER} -p -h {HOST} --port={PORT} --databases {DATABASE NAME} > /path/to/backup.sql
```
如果只是想備份 Databse 的架構,而不需要資料的話,可以使用以下的指令。
```sh
$ mysqldump -u {USER} -p -h {HOST} --port={PORT} --no-data --databases {DATABASE NAME} > /path/to/backup.sql
```
主要是加入了 `--no-data` 來達成。