http://blogold.chinaunix.net/u3/90603/showart_1964109.htmlhtml
1. 數據文件的位置
load data的文件位置:
若是爲絕對路徑,則直接訪問絕對路徑下的文件。
若是爲相對路徑(只有文件名),則在默認數據庫的數據目錄中尋找文件。
若是爲相對路徑(包含文件夾),則在數據庫數據目錄下尋找相應文件夾。
load data local的文件位置:
若是爲絕對路徑,則直接訪問絕對路徑下的文件。
若是爲相對路徑,則在當前目錄下尋找。
2. local的用法
mysqlimport -L database 'name.txt'
mysql> load data local infile 'name.txt' into table talbe_name
3. 指定文件格式
fields-terminated-by
fields-enclosed-by
fields-escaped-by
lines-terminated-by
可 用轉義符,也可用ASCII碼
\t = 0x09
\n = 0x0a
\r = 0x0d
4. 不一樣操做系統的行結束符
Unix : \n
Windows: \r\n
5. 處理重複的值
load data local infile 'name.txt' replace into table table_name
或者使用mysqlimport的--replace選項
6. 跳過文件頭幾行
load data infile 'name.txt' into table table_name ignore 1 lines;
7. 修改文件數據和列值的對應關係
load data infile 'name.txt' into table table_name (col1,col3,col2);
8. 插入前對數據進行預處理
load data infile 'name.txt' into table table_name (@col1,@col2,@col3)
set
col1 = substr(@col1,2),
col2 = concat(@col2,'_suffix'),
col3 = @col3 *10;
9. 忽略某一列
load data infile 'name.txt' into table table_name (col1,col2,@dummy,col3);
10. 用mysqldump導出文件
shell> mysql -e 'select ... ' --skip-column-names database > data.txt
shell> mysqldump --no-create-info --tab=/tmp table database
mysql> select ... into outfile '/tmp/name.txt'
注意:
必須擁有file權限
輸出文件不能已經存在
必須擁有對主 機有寫權限的賬戶
mysql