MySQL数据导入oracle
2012-04-17 09:51
447 查看
步骤:
1、从mysql导出数据文件
select sender,imsi,random_code,date_format(token_create_time,'%Y%m%d%H%i%s'),date_format(last_login_time,'%Y%m%d%H%i%s'),1 as status
from tb_sms_token where last_login_time is not null
into outfile '/home/mysql/TB_GH_WLAN_TOKEN.dat'
FIELDS
TERMINATED BY '$'
ESCAPED BY '\\'
LINES
TERMINATED BY '\r\n'
select sender,imsi,random_code,date_format(token_create_time,'%Y%m%d%H%i%s'),date_format(last_login_time,'%Y%m%d%H%i%s'),1 as status
from tb_sms_token where last_login_time is not null
into outfile '/home/mysql/TB_GH_WLAN_TOKEN.dat'
FIELDS
TERMINATED BY '$'
ESCAPED BY '\\'
LINES
TERMINATED BY '\r\n'
各条数据用换行分割,字段之前用$分割
2、如有oracle无法处理字段可以用linux的awk或sed工具进行转换
3、使用oracle的sqlldr命令导入数据文件,控制文件内容如下
LOAD DATA
INFILE "/home/oracle/TB_GH_WLAN_TOKEN.dat"
APPEND
INTO TABLE GAME_HALL_TOKEN_TEMP
FIELDS TERMINATED BY '$'
(id sequence(max,1),
PHONE_NUMBER ,IMSI,TOKEN_VALUE,
CREATE_TIME date "yyyyMMddhh24miss",
LAST_USE_TIME date "yyyyMMddhh24miss",
STATUS integer)
LOAD DATA
INFILE "/home/oracle/TB_GH_WLAN_TOKEN.dat"
APPEND
INTO TABLE GAME_HALL_TOKEN_TEMP
FIELDS TERMINATED BY '$'
(id sequence(max,1),
PHONE_NUMBER ,IMSI,TOKEN_VALUE,
CREATE_TIME date "yyyyMMddhh24miss",
LAST_USE_TIME date "yyyyMMddhh24miss",
STATUS integer)
具体sqlldr使用可以参考oracle帮助
需要注意的问题有:
1、主键的生成
2、日期格式处理
3、空值的处理
4、大数据量导入可以目标库中先不建索引,导入后再加上索引,应该可以加快导入速度
1、从mysql导出数据文件
select sender,imsi,random_code,date_format(token_create_time,'%Y%m%d%H%i%s'),date_format(last_login_time,'%Y%m%d%H%i%s'),1 as status
from tb_sms_token where last_login_time is not null
into outfile '/home/mysql/TB_GH_WLAN_TOKEN.dat'
FIELDS
TERMINATED BY '$'
ESCAPED BY '\\'
LINES
TERMINATED BY '\r\n'
select sender,imsi,random_code,date_format(token_create_time,'%Y%m%d%H%i%s'),date_format(last_login_time,'%Y%m%d%H%i%s'),1 as status
from tb_sms_token where last_login_time is not null
into outfile '/home/mysql/TB_GH_WLAN_TOKEN.dat'
FIELDS
TERMINATED BY '$'
ESCAPED BY '\\'
LINES
TERMINATED BY '\r\n'
各条数据用换行分割,字段之前用$分割
2、如有oracle无法处理字段可以用linux的awk或sed工具进行转换
3、使用oracle的sqlldr命令导入数据文件,控制文件内容如下
LOAD DATA
INFILE "/home/oracle/TB_GH_WLAN_TOKEN.dat"
APPEND
INTO TABLE GAME_HALL_TOKEN_TEMP
FIELDS TERMINATED BY '$'
(id sequence(max,1),
PHONE_NUMBER ,IMSI,TOKEN_VALUE,
CREATE_TIME date "yyyyMMddhh24miss",
LAST_USE_TIME date "yyyyMMddhh24miss",
STATUS integer)
LOAD DATA
INFILE "/home/oracle/TB_GH_WLAN_TOKEN.dat"
APPEND
INTO TABLE GAME_HALL_TOKEN_TEMP
FIELDS TERMINATED BY '$'
(id sequence(max,1),
PHONE_NUMBER ,IMSI,TOKEN_VALUE,
CREATE_TIME date "yyyyMMddhh24miss",
LAST_USE_TIME date "yyyyMMddhh24miss",
STATUS integer)
具体sqlldr使用可以参考oracle帮助
需要注意的问题有:
1、主键的生成
2、日期格式处理
3、空值的处理
4、大数据量导入可以目标库中先不建索引,导入后再加上索引,应该可以加快导入速度
相关文章推荐
- 分享MSSQL、MySql、Oracle的大数据批量导入方法及编程手法细节
- 将oracle的数据导入到mysql的三种方法
- 使用MySQL Migration Toolkit快速将Oracle数据导入MySQL
- MYSQL数据导入ORACLE
- 使用disruptor 将5百多万数据从mysql导入到oracle
- 使用MySQL Migration Toolkit快速将Oracle数据导入MySQL
- 使用MySQL Migration Toolkit快速将Oracle数据导入MySQL[转]
- 使用MySQL Migration Toolkit快速将Oracle数据导入MySQL
- Oracle数据导入MySQL
- Sqoop_详细总结 使用Sqoop将HDFS/Hive/HBase与MySQL/Oracle中的数据相互导入、导出
- linux下大文件编码转码及将oracle中数据导入mysql
- python将oracle中的数据导入到mysql中。
- mysql与Oracle垃圾用户方案临时给的excel文件数据批量数据导入库操作步骤整理
- 使用MySQL Migration Toolkit快速将Oracle数据导入MySQL
- Oracle数据导入MySQL
- 使用MySQL Migration Toolkit快速将Oracle数据导入MySQL
- 使用MySQL Migration Toolkit快速将Oracle数据导入MySQL
- Sqoop_详细总结 使用Sqoop将HDFS/Hive/HBase与MySQL/Oracle中的数据相互导入、导出
- ORACLE10gr2数据导入MySQL方案
- Oracle数据导入MySQL的快捷工具