oracle 数据库 要设定一个数据库用户每天在晚上23:00进行自动备份,并重建索引 怎么做

oracle 数据库 要设定一个数据库用户每天在晚上23:00进行自动备份,并重建索引 怎么做,第1张

首先需要编写一个批处理文件,用于实现数据库备份功能,可以命名为BAT(后缀名修改为 BAT): @echo off color 0b mode con cols=80 lines=25 echo 正在备份数据库,请稍后�1�76�1�77�1�76�1�77 echo -------------------------------------- echo 指定数据库用户(在“=”后面写入你需要备份的数据库登 录用户名) set yh=information echo 指定数据库密码(在“=”后面写入你需要备份的数据库登 录密码) set mm=information echo 指定数据库服务名(在“=”后面写入你需要备份的数据库 服务名) set fwm=CS echo 指定备份目录(指定备份的文件夹,以“\”结束) set ml=e:\lkdata\ echo ---------------------------------------------- echo 开始计算日期和时间,用于备份文件的名称(由于是自动备 份,备份的文件名我们定义为数据库登录名+系统时间—精确到 秒) set hh=%time:~0,2% echo 如果小时是一位的,那么在前面补零 if /i %hh% LSS 10 (set hh=0%time:~1,1%) set rq=%DATE:~0,4%%DATE:~5,2%%DATE:~8,2% set sj=%hh%%TIME:~3,2%%TIME:~6,2% set wjm=%yh%%rq%%sj% echo ---------------------------------------------- echo 请核对以下数据是否正确 echo 用户名:%yh% echo 密码:%mm% echo 服务名:%fwm% echo 备份目录:%ml% echo 备份文件名:%wjm% echo ---------------------------------------------- echo 开始备份数据库 echo --------------------------------------------- exp %yh%/%mm%@%fwm% file=%ml%%wjm%dmp log=%ml%%wjm%log owner=%yh% echo 数据库备份完成 echo ---------------------------------------------- 以上就是我们自动备份的代码,其中echo 后面的文本都是说明文 字,大家可以删除,将以上代码复制到文本文件,重命名为BAT (尽量不要把备份文件放在桌面或者系统盘下,避免系统损坏以 后丢失备份文件),保存以后,我们可以双击执行,当执行完成以 后,在备份目录下会备份文件,如下图 1、 自动备份实现 以上我们已经实现了数据库的备份脚本,那么如何实现自动定时 备份呢?这就要利用WINDOW *** 作系统提供的计划任务功能了, 我们通过开始---控制面板,打开控制面板,双击执行计划任务 打开计划任务功能,然后双击添加计划任务打开计划任务向导,点击下一步 选择浏览,找到我们在第二步建立的备份脚本文件,点击打开, 进入下一步 在这一步我们输入备份计划的名称,方便以后区分,同时选择备 份的频率,这里以一天为准 在这一步需要输入每天备份启动的时间(这根据每一个项目来自 行设定,建议将备份放在数据库 *** 作较少的时段),一般建议在中 午考试空闲时段。 在这一步需要输入登录 *** 作系统的用户和密码,如系统默认的用 户 Administrator 没有设置密码,可以另外建立一个带密码的用 户。 确认以上 *** 作无误后,点击完成 这样我们就可以在计划任务列表中看到当前的计划任务 以上我们就实现了ORACLE数据库的自动备份功能,当然,如果 有数据库需要多个时间段备份,我们只需要重复上面的 *** 作即可。 二:设置自动删除以前的备份。 我们实现了ORACLE 数据库的自动备份功能,但每次备份都会创 建一个新备份文件,一定时间后占用的硬盘空间将非常大,还需 要创建批处理文件,用于实现删除之前的备份文件功能,粘贴如 下代码到文本文档中,重新命名为BAT(后缀名修改为BAT): del e:\lkdata\ 删除指定备份目录下所有备份文件,这里的待删除备份文件地址 要和之前的备份目录地址对应,然后添加计划任务让其定时运行, 建议清理计划运行的时间以1 周2 次的频率为佳,该计划运行的时间 在备份计划之间 1 个小时之前,这样就能达到先删除之前旧备份,1 个小时后自动新的备份建立。

alter tablespace aaa offline;

alter tablespace bbb offline;

drop tabelspace aaa including contents and datafiles;

drop tablespace bbb including contents and datafiles;

alter system archive log current;

再重新restart一下。。

再建立tablespace

dbf文件不能删除。

如果直接删除dbf文件会导致oracle服务异常,从而无法正常使用该数据库。

如果dbf文件增长过大,应该是设置了数据库文件自动增长。

可以在所属表空间下新增dbf文件,然后将users01dbf的自增长选项关闭,这样users01dbf就不会继续增长,新数据都会写入到新建的dbf文件中去。

索引重建时会做两个工作:

1,空间重新分配,

2,统计信息从新收集。

对于空间足够前者可以忽略

对于后者,不仅索引的统计信息需要重新收集,表的统计信息也需要收集。

高版本oracle 会自动收集统计信息。如果执行计划明显异常时,可以手工收集统计信息,采样率高些。正常不用重建索引。

以上就是关于oracle 数据库 要设定一个数据库用户每天在晚上23:00进行自动备份,并重建索引 怎么做全部的内容,包括:oracle 数据库 要设定一个数据库用户每天在晚上23:00进行自动备份,并重建索引 怎么做、怎样在oracle重建表空间时不使用原有的数据文件、oracle 10g 系统数据库USERS01.DBF增长过大,能不能删除重建等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: https://www.outofmemory.cn/sjk/9357856.html

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

发表评论

登录后才能评论

评论列表(0条)

保存