mysqldump及mysqlimport總結

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

相關文章
相關標籤/搜索