如何从ORACLE数据库中导出海量的数据? 如何将数据库中千万级表中数据导出为TEXT文件?除了SPOOL和UTL_FILE包。多谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 SPOOL导出海量感觉是不合适的,文件会非常大,因为他需要固定每行的长度。如果设置的长度短了超过的字符就会被截掉,设长了就会资源浪费文件变大。用UTL_FILE正常点。其他方式估计得用其他语言或者第三方工具导出了 shell脚本重定向,应该也可以 使用 expdp 吧,这个速度很快; sqluldr2 可行 使用 exp导出表空间(我导出过1.5G的数据)exp user/password@server file=filefullpathname user为用户名 password为密码 server 为实例名如下:如果出现如下提示则表示导出成功 如果是想导出此表中的数据,可以先写好select的查询sql语句,然后导出dmp,如果这样,需要用到par包! 还可以用sqluldr2,可以用plsqlDev,toad等工具辅助导出。导成txt,打开是一个问题,会很卡,也不会那么直观的从里面分析数据。更明确的需求是什么? sqluldr2 是正解 1、查linux版本[附件:sqluldr.zip]cat /proc/version如下结果Linux version 2.6.32-358.el6.x86_64 ([email protected]) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC) ) #1 SMP Tue Jan 29 11:47:41 EST 2013可以看到是64位的2、把本文件夹下的包sqluldr2_linux64_10204.bin拷到/opt/app/oracle/product/11.2.0/db_1/bin(对应的文件拷对应的版本)cp sqluldr2_linux64_10204.bin /opt/app/oracle/product/11.2.0/db_1/bin/sqluldr2.bin3、配置.bash_profile文件添加如下变量vi .bash_profileexport LD_LIBRARY_PATH=$ORACLE_HOME/bin:$ORACLE_HOME/lib:/lib:/usr/lib;4、给sqluldr2.bin文件添加执行权限chmod 775 /opt/app/oracle/product/11.2.0/db_1/bin/sqluldr2.bin5、在/opt/app/oracle/product/11.2.0/db_1/bin/下创建get_tables.sql文件touch /opt/app/oracle/product/11.2.0/db_1/bin/get_tables.sql6、将需要执行的的sql语句放到get_tables.sql7、执行导出,生成testexport.csv文件sqluldr2.bin USER=用户名/密码@DB名 sql=get_tables.sql charset=ZHS16GBK head=yes text=CSV FILE=/opt/app/oracle/product/11.2.0/db_1/bin/testexport_2.txt8、到excel转换 oracle如果采用表垂直分区的话,是不是可以突破表的1000个字段数的限制? Oracle 9.2.0.8 SGA配置问题!!急急急 编译package 如何只插入数据库不存在的数据 ORACLE数据库表的列名使用了保留字,insert语句怎样写? 何为动态SQL?动态组成? 请问oracle数据库多内码问题。 ORACLE中有无跳出本次循环的语句? 在oracle 中实现取前几条记录的 SQL语句怎么写 regexp_substr 变量标识符无效 oracle触发器,改成存储过程 在Oracle 11gR2(win7系统)中,如何在局域网中别的Oracle机器上创建表,访问数据库或者表
用UTL_FILE正常点。其他方式估计得用其他语言或者第三方工具导出了
exp user/password@server file=filefullpathname
user为用户名 password为密码 server 为实例名如下:如果出现如下提示则表示导出成功
导成txt,打开是一个问题,会很卡,也不会那么直观的从里面分析数据。
更明确的需求是什么?
[附件:sqluldr.zip]cat /proc/version
如下结果
Linux version 2.6.32-358.el6.x86_64 ([email protected]) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC) ) #1 SMP Tue Jan 29 11:47:41 EST 2013
可以看到是64位的2、把本文件夹下的包sqluldr2_linux64_10204.bin拷到/opt/app/oracle/product/11.2.0/db_1/bin(对应的文件拷对应的版本)
cp sqluldr2_linux64_10204.bin /opt/app/oracle/product/11.2.0/db_1/bin/sqluldr2.bin3、配置.bash_profile文件添加如下变量
vi .bash_profile
export LD_LIBRARY_PATH=$ORACLE_HOME/bin:$ORACLE_HOME/lib:/lib:/usr/lib;4、给sqluldr2.bin文件添加执行权限
chmod 775 /opt/app/oracle/product/11.2.0/db_1/bin/sqluldr2.bin5、在/opt/app/oracle/product/11.2.0/db_1/bin/下创建get_tables.sql文件
touch /opt/app/oracle/product/11.2.0/db_1/bin/get_tables.sql6、将需要执行的的sql语句放到get_tables.sql7、执行导出,生成testexport.csv文件
sqluldr2.bin USER=用户名/密码@DB名 sql=get_tables.sql charset=ZHS16GBK head=yes text=CSV FILE=/opt/app/oracle/product/11.2.0/db_1/bin/testexport_2.txt8、到excel转换