首页 > 代码库 > sql*loader的使用(iostat数据导入数据库表)

sql*loader的使用(iostat数据导入数据库表)

目的:将iostat指令的数据,导入到文件iostat.dat中,然后通过sqlldriostat数据倒入到数据库中

第一步:U1/tiger用户建立表iostat

create table iostat(device varchar(10),tps float(20),mb_read_s float(20),mb_wrtn_s float(20) ,mb_read float(20),mb_wrtn float(20));

第二步:创建源数据文件

Iostat –md /dev/sda2 >/oracle/script/ iostat.dat

Cat iostat.dat

Linux 2.6.18-164.el5 (host2)    08/15/2014

 

Device:            tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn

sda2             13.06         0.09         0.11        961       1194

第三步:建立控制文件

load data

infile ‘/oracle/script/iostat.dat‘

append into table iostat

FIELDS TERMINATED BY WHITESPACE

(device,tps,mb_read_s,mb_wrtn_s,mb_read,mb_wrtn)

        注:第二行指定输入文件,

第三行指定策略为追加,写入table iostat

            第四行表示文本文件的字段按照空格来划分

第五行指定文本字段和表的对应关系

 

第四步:开始导入数据库

sqlldr u1/tiger control=‘iostat.ctl‘ log=‘/oracle/script/iostat.log‘ skip=3 bad=‘iostat.bad‘

注:

Bad文件记录没有成功写入表的记录。

Log文件记录传输的日志。

控制文件时上述编写的控制文件。

Skip=3 表示忽略文本文件iostat.dat的前三行(Linux 2.6.18-164.el5 (host2)     08/15/2014等内容)

第五步:查看导入结果

SQL> select * from iostat

DEVICE                  TPS              MB_READ_S              MB_WRTN_S                MB_READ                MB_WRTN

---------- ---------------------- ---------------------- ---------------------- ---------------------- ----------------------

sda2                   18.39                   0.18                   0.14                    877                    681