mysql: utf-8字符集
oracle: Al32UTF8
步驟:
1. 從mysql導出csv格式數據,導出時設置default_character_set=gbk,否則會亂碼
2.上傳至linux服務器(oracle服務器),用以下命令將windows的/r/n換成/r:
sed -i "s//r//g" file
3.將gbk編碼轉為utf8編碼:
iconv -f gb18030 -t utf-8 file1.txt > file2.txt
4.編寫sql loader控件文件(file.ctl):
options (skip=1)
load data
CHARACTERSET AL32UTF8
infile 'terminal.txt'
badfile 'terminal.err'
discardfile 'terminal.dis'
replace into table terminal
fields terminated by ',' TRAILING NULLCOLS
(
id,
mobile,
imsi,
imei,
evoketime date "yyyy-mm-dd hh24:mi:ss",
province,
city,
evokenum,
createtime date "yyyy-mm-dd hh24:mi:ss",
project_id,
carrier,
ip,
sc,
new_imsi,
new_imei
)
5. 運行sqlldr導入到oracle數據庫:
sqlldr user/pass@db -control=file.ctl