如果需要从oracle中每天定时导出数据用什么方法?

如果需要从oracle中每天定时导出数据用什么方法?,第1张

1、创建数据库日志表导出为文本文件脚本tabout.ctl或tabout.sql

注意:该日志导出后在c:\HttpLog目录下

tabout.ctl脚本内容如下:

SET NEWPAGE NONE

SET HEADING OFF

SET TERM OFF

SET SPACE 0

SET PAGESIZE 0

SET TRIMOUT ON

SET TRIMSPOOL ON

SET LINESIZE 2500

set feedback off

set echo off

SET VERIFY OFF

column v_date new_value filename

select to_char(sysdate,'yyyymmdd') || '.log' v_date from dual

spool ..\HttpLog\&&filename            

select id||','||name from orcluser.test

spool off

exit

2、创建调用该脚本的logout.bat文件

logout.bat内容如下:

mkdir ..\HttpLog\

C:\oracle\ora92\bin\sqlplus orcluser/orcl @C:Oracleout.ctl

说明:该bat文件直接在当前目录下创建名为HttpLog的文件夹,以便tabout.ctl脚本输出的文件存放到该目录下。其通过调用Oracle中sqlplus可执行文件来执行tabout.ctl脚本,所以该文件直接双击即可运行,无需其他 *** 作。

3、通过windows定时任务实现自动定期执行

“在控制面板——任务计划——添加任务计划”中建立定期将数据库中日志表数据导出为文本格式(如:你可以根据需求设置为每天对日志表数据进行导出)。根据你当前对日志文件路径的存储需求,修改上面两个脚本中的存储路径,在windows定时任务直接调用logout.bat文件执行即可。

SQLServer表数据导出为Excel文件

一、少量数据导出

1、在查询分析器中,使用SQL语句检索要导出的数据

2、选中所有数据,点击鼠标右键,选择另存为CSV文件

3、用EXCEL把CSV文件另存为xls文件。

二、表格批量导出

1、开始菜单选择"导入和导出数据"

2、选择要导出的数据库,如图配置

3、设置导出目标

4、设置目标文件

5、选择筛选数据发送

6、选择导出的表格

7、完成设置

mysql -h主机IP -u用户名 -p密码 -e "SQL语句" 库的名字 >文件存放路径/文件名.xls

例如:mysql -h192.168.1.1 -uroot -p123456 -e "select * from edu_iclass_areas" test >/root/test/test.xls

上面是语句,然后把上面的语句写成一个脚本,给一个可执行权限,然后在通过crontab做一个定时任务即可

脚本内容:

#!/bin/bash

mysql -h192.168.1.1 -uroot -p123456 -e "select * from edu_iclass_areas" test >/root/test/test.xls

假设脚本名称是test.sh,所在路径是/root/test/test.sh,则给其授权

chmod +x /root/test/test.sh

然后做定时任务,定时执行此脚本,比如每天晚上2点执行:

crontab

0 2 0 0 0 /root/test/test.sh


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9902025.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存