從文本文件中讀取數據(import)
常用的文本文件:CSV(Comma Separated Values)文件,即:以逗號分隔的數值
形式如下:
[plain]
M0001,李剛,1976-01-05,1
M0002,王二,1955-01-15,1
M0003,李四,1967-03-05,1
[sql]
LOAD DATA INFILE 'D:/myCodes/test.cvs' INTO TABLE member FIELDS TERMINATED BY ','; -- 注意 test.cvs 文件的編碼
SELECT * INTO OUTFILE 'D:/myCodes/out.cvs' FIELDS TERMINATED BY ',' FROM member;
執行文件中保存的 SQL 命令
[sql]
SOURCE D:/myCodes/test.sql -- SOURCE 並不 SQL 命令,因此,結尾不用加分號 ;
mysql test -uroot -p -e "SOURCE D:/myCodes/test.sql" -- test 是數據庫名
可以將上述 SQL 語句寫成批處理文件,如:
[plain]
mysql test -uroot -p -e "SOURCE D:/myCodes/test.sql"
pause
將 SQL 執行結果保存到文件中
鍵盤、鼠標等輸入設備,被稱為標准輸入;
顯示器等設備,屬於標准輸出。
標准輸入、標准輸出,這些設備,是可以變更的,這種變更操作就稱為重定向(Redirect)。
命令窗口中
[sql]
復制代碼 代碼如下:
dir > D:/myCodes/redirect.txt
dir > D:\myCodes\redirect.txt
TYPE D:\myCodes\redirect.txt
HELP
HELP TYPE
MySQL 中,
[sql]
復制代碼 代碼如下:
mysql -uroot -p > D:\myCodes\log.txt
TYPE D:\myCodes\log.txt
mysql -uroot -p -e "SOURCE D:/myCodes/test.sql" > D:\myCodes\log.txt
使用 tee 命令將 SQL 語句的執行結果保存到文件中
[sql]
復制代碼 代碼如下:
tee D:/myCodes/teeLog.txt
USE home;
SELECT * FROM customer;
notee;
EXIT;
TYPE D:\myCodes\teeLog.txt
數據庫備份與恢復
將數據庫整體保存到文件中的操作,被稱為轉儲(dump)
將轉儲文本文件還原成數據庫的操作,被稱為恢復(restore)
[sql]
復制代碼 代碼如下:
mysqldump -u root -p home > D:/myCodes/home_back.sql --default-character-set=utf8
mysqladmin -u root -p CREATE home1
mysql -u root -p home1 < D:/myCodes/home_back.sql --default-character-set=utf8