兄弟,不是damp文件,是dmp文件吧
开始-运行-cmd
exp 数据库用户/密码@数据库连接串 tables=(table01) file=c:\xx\table01dmp
然后回车
启动oracle数据库步骤:\x0d\首先使用oracle用户登录Linux,然后在shell命令行中执行下面的命令:\x0d\第一步:打开Oracle监听\x0d\$ lsnrctl start\x0d\第二步:进入sqlplus\x0d\$ sqlplus /nolog\x0d\SQL>\x0d\第三步:使用sysdab角色登录sqlplus\x0d\SQL> conn /as sysdba\x0d\第四步:启动数据库\x0d\SQL> startup\x0d\经过上面的四个步骤,oracle数据库就可以启动了。\x0d\关闭数据库用 shutdown 是要等待事物结束才关闭,强制关闭用 shutdown abort。
#取出文件名和路径到/oracle/filename_temptxt文件中,这里把文件名和路路径用 | 分开了 方便awk取值
echo "sqlplus user/pwd@sid <<!!
set feedback off
set heading off
set pagesize 0
set linesize 50
set term off verify off
set echo off
set colsep ","
set trimspool on
spool /oracle/filename_temptxt
select filepath||'|'||filename from temptable;
spool off
quit
!! " > /oracle/filename_tempsh
sh /oracle/filename_tempsh
rm /oracle/filename_tempsh
cat /oracle/filename_temptxt|grep -v SQL|while read line
do
filepath=`echo $line|awk -F '|' '{print $1}'`
filename=`echo $line|awk -F '|' '{print $2}'`
mkdir -p /oracle/$filepath #这里的路径可能还要根据你的要求自己改下
cd /oracle/$filepath
touch $filename
done
应用spool命令,大量数据汇出很方便,脚本内容大致如下:
--============================================
#!/bin/sh
#第一步
sqlplus -s 用户名/密码@服务名<<EOF
spool customerssql --输出文件路径及名称
set trimspool on
set linesize 8000
set pagesize 50000
set newpage 1
set heading off
set term off
set feedback off
set sqlblankline off
SELECT A || '|+|' || --字段A
B || '|+|' || --字段B
C || '|+|' || --字段C
D || '|+|' || --字段D
E || '|+|' || --字段E
F || '|+|' || --字段F
G || '|+|' || --字段G
TO_CHAR(H,'YYYYMMDD HH:MM:SS') || '|+|' --字段H,可以使用函数
FROM CUSTOMERS;--表名
spool off
exit
EOF
--=======================
其中'|+|'为分隔符,也可以换成你说的逗号,即','。调用该脚本后,在根目录下生成customerssql文件。
有一个工具是mysql到oracle做数据迁移的叫Convert Mysql to Oracle 你可以试试,不知道合不合适。
非要弄shell的话,那可真是麻烦可以选择让程序员写个小程序转换sql的让后用shell调用。
真自己写shell。。。那就折腾导出来的 create、insert语句吧。想想都头大。是在没必要完全用shell弄。
以上就是关于如何编写一个shell脚本,从oracle数据库一个表table01读取全部数据到指定xx目录下的table01.damp文件全部的内容,包括:如何编写一个shell脚本,从oracle数据库一个表table01读取全部数据到指定xx目录下的table01.damp文件、linux下怎么启动oracle数据库,命令是什么、创建空文件的shell脚本,文件创建路径和文件名从Oracle数据库指定表中读取。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)