MySQL 備份資料庫有兩種方法,一種是土法煉鋼法,就是直接把
/usr/local/mysql/data/[資料庫名稱]/*
備份,然後放回另一個 MySQL 的資料庫路徑裡,不過資料庫版本要一樣喔,以免發生非預期的結果。
PS. 第一個方法備份還原時最好先把 mysqld 停下來。
要看 MySQL 是否執行中可下:
/usr/local/mysql/bin/mysqladmin status
另一種感覺較正規的作法就是用 mysqldump 把資料倒出來 *.sql,指令格式如下:
mysqldump --user=[資料庫使用者] -p [資料庫名稱] > [備份檔名].sql
Example:
mysqldump --user=root -p wordpress > /Users/home/wordpress.sql
完成後你就會在 /Users/home/ 得到 wordpress.sql,把這個 .sql 上傳到你要轉移的主機上
注意喔,如果要還原回去的 MySQL 中不存在這個資料庫時,會發生這樣的錯誤:
mysql --user=root -p wordpress < /Users/home/wordpress.sql Enter password: ERROR 1049 (42000): Unknown database 'wordpress'
所以記得要先進 MySQL 建好資料庫喔。
登入 MySQL
mysql -u root -p
建 wordpress 資料庫
mysql> create database wordpress; Query OK, 1 row affected (0.00 sec)
離開資料庫
mysql> quit
接著準備匯入了,匯入的指令格式:
mysql -h [mysqlhostserver] -u [資料庫使用者] -p [資料庫名稱] < [備份檔名].sql
Example:
mysql --user=root -p wordpress < /Users/chun/wordpress.sql
註:我沒用到 -h [mysqlhostserver] 這個參數。
這樣囉!收工。
參考資料:
http://blog.lauct.org/archives/556