k-db 数据库kdloader(类似oracle的sqlloader)进行数据循环导入数据库


===========================================================================

这种方法,后台最多一个kdloader在运行,因为这样4个kdloader会顺序执行,执行完一个才会执行下一个。

#!/bin/bash
n=1
while [ $n -le 10 ]
do
        kdloader userid=test/test@kdb11g control=1.ctl bindsize=1000000 direct=y  
        kdloader userid=test/test@kdb11g control=2.ctl bindsize=1000000 direct=y
        kdloader userid=test/test@kdb11g control=3.ctl bindsize=1000000 direct=y
        kdloader userid=test/test@kdb11g control=4.ctl bindsize=1000000 direct=y
        let n+=1
done


===========================================================================

这种方法,不停的执行一组一组的kdloader,不会等待。会导致连接资源被占满,报unable create a new session ,可能同时十几个、几十个kdloader在运行。

#!/bin/bash
n=1
while [ $n -le 10 ]
do
        kdloader userid=test/test@kdb11g control=1.ctl bindsize=1000000 direct=y   &
        kdloader userid=test/test@kdb11g control=2.ctl bindsize=1000000 direct=y   &
        kdloader userid=test/test@kdb11g control=3.ctl bindsize=1000000 direct=y   &
        kdloader userid=test/test@kdb11g control=4.ctl bindsize=1000000 direct=y   &
        let n+=1
done

===========================================================================

这种执行一组(4个kdloader),全部完成后,再进入下一组。后台最多只有4个kdloader在运行。

#!/bin/bash
n=1
while [ $n -le 10 ]
do
        kdloader userid=test/test@kdb11g control=1.ctl bindsize=1000000 direct=y   &
        kdloader userid=test/test@kdb11g control=2.ctl bindsize=1000000 direct=y   &
        kdloader userid=test/test@kdb11g control=3.ctl bindsize=1000000 direct=y   &
        kdloader userid=test/test@kdb11g control=4.ctl bindsize=1000000 direct=y   
        let n+=1
done

===========================================================================


以下两个没有成功,先记录下来,待处理。

#!/bin/bash
i=1
n=1

 while [ $n -le 8 ]
do
     while [ $i -le 4 ]
      do
        kdloader userid=test/test@kdb11g control=$i.ctl bindsize=1000000  &
        let i+=1
      done
   let n+=1
done


#!/bin/bash
i=1
n=1
while [ $n -le 10 ]
do
   if [ $i -le 4 ]
   then 
        kdloader userid=test/test@kdb11g control=$i.ctl bindsize=1000000 
        let i+=1
   else
        exit 0 
   fi
   let n+=1
done

请使用浏览器的分享功能分享到微信等