一,數據庫的備份與導入
1),數據庫的備份
1.導出整個數據庫
mysqldump -u 用戶名 -p 數據庫名 > 導出的文件名
例:mysqldump -u dbadmin -p myblog > /home/zhangy/blog/database_bak/myblog.sql
2.導出一個表
mysqldump -u 用戶名 -p 數據庫名 表名> 導出的文件名
例:mysqldump -u dbadmin -p myblog wp_users> /home/zhangy/blog/database_bak/blog_users.sql
3.導出一個數據庫結構
mysqldump -u dbadmin -p -d --add-drop-table myblog > /home/zhangy/blog/database_bak/blog_struc.sql
說明:-d 沒有數據 --add-drop-table 在每個create語句之前增加一個drop table
4.導出數據庫一個表結構
mysqldump -u dbadmin -p -d --add-drop-table myblog wp_users> /home/zhangy/blog/database_bak/blog_users_struc.sql
說明:-d 沒有數據 --add-drop-table 在每個create語句之前增加一個drop table
2),數據庫的導入
1,用 mysqldump 備份出來的文件是一個可以直接倒入的 SQL 腳本,有兩種方法可以將數據導入。
例如:
#/usr/local/mysql/bin/mysql -u root -p ***** myblog < /home/zhangy/blog/database_bak/myblog.sql
這種方法,我以前經常現在很少用了,因為很容易產生亂碼,因為:
a,導出數據庫時,你如果忘了設置導出字符集的話,在導入的時候,就有可能會出問題.
b,假如,你導出時設置導出時設置了utf8的編碼,但是你又把你的數據庫現在的字符集改成了gb2312的.這樣又會亂碼。
2,用 source 語句
例如:
mysql -u dbadmin -p
use myblog;
set names utf8; #這里的字符集根你的將要導入的數據庫的字符集一至。
source /home/zhangy/blog/database_bak/myblog.sql;