Oracle 自动备份、恢复功能

php中文网
发布: 2016-06-07 17:01:51
原创
1155人浏览过

1.自动备份可以采用exp方式(前提是你要有导出的权限),并写一个操作系统的脚本,如果windows系统,可写一个bat,在其中使用exp

1.自动备份

可以采用exp方式(前提是你要有导出的权限),并写一个操作系统的脚本,如果windows系统,可写一个bat,在其中使用exp进行导出,然后将BAT添加计划任务。
backup.bat 

--代码如下:
echo off
exp system/sa@orcl file=d:\autobackup\ies%date%.dmp log=d:\autobackup\ies%date%_exp.log owner=(ies) buffer=655000 compress=y

pause

2.自动恢复

备份是定期做,恢复一般只有当需要恢复时才发生,,所以恢复是不添加到计划任务中的,

但是为了操作方便,也可以做成.bat文件。

恢复时一般要做两件事情:1.启动sqlplus,创建表空间和用户,并推出sqlplus;2.导入备份的.dmp文件。

recover.bat

--代码如下:

I-Shop购物系统
I-Shop购物系统

部分功能简介:商品收藏夹功能热门商品最新商品分级价格功能自选风格打印结算页面内部短信箱商品评论增加上一商品,下一商品功能增强商家提示功能友情链接用户在线统计用户来访统计用户来访信息用户积分功能广告设置用户组分类邮件系统后台实现更新用户数据系统图片设置模板管理CSS风格管理申诉内容过滤功能用户注册过滤特征字符IP库管理及来访限制及管理压缩,恢复,备份数据库功能上传文件管理商品类别管理商品添加/修改/

I-Shop购物系统 0
查看详情 I-Shop购物系统

sqlplusw system/Oracle@oracle @sqlplus_cuser.sql
echo off
imp system/oracle@oracle fromuser=(ies) touser=(ies) buffer=655000 ignore=y commit=y file=d:\autorecover\ies2010-11-23.dmp log=d:\autorecover\ies2010-11-23_imp.log

pause

注意:

1.需要用户手工做的操作时将备份的×××.dmp文件放在指定目录(d:\autorecover)下,并将文件名改为ies2010-11-23.dmp(或者可以不改文件名,而是将recover.bat用记事本打开,将ies2010-11-23.dmp改为对应的文件名)

2.sqlplus_cuser.sql是创建表空间和用户的功能。

--代码如下:

spool cuser.log
connect system/oracle@oracle;
  --删除用户--
  drop user ies cascade;
  --删除表空间--
  drop tablespace iests including contents;
  --创建表空间--
  create tablespace iests datafile 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORACLE\IESTS.DBF' size 200m reuse autoextend on next 50m;
  --创建用户并授权--
  create user ies identified by ies2010 default tablespace iests;

  grant resource,connect to ies;
  grant select any dictionary to ies;
  grant select any sequence to ies;
  grant create any table,alter any table,drop any table to ies;
  grant select any table,insert any table,update any table,delete any table to ies;
  grant create any trigger,alter any trigger,drop any trigger to ies;
  grant create any procedure,alter any procedure,drop any procedure,execute any procedure to ies;
  grant create any view,drop any view to ies;
  grant create any synonym to ies;
  grant create any snapshot to ies;
 
  exit;
spool off;

3.在数据库恢复时(导入),需要停止web服务,是数据库处于不被连接的状态,否则用户删除时报错,不能被删除。
如果不删除用户,只删除表空间,将导致用户下的object不能被删除(object包括function,procedure,synonym,package,Javasource,javaclass等),同样object不能被导入。
function,procedure,synonym,package,Javasource,javaclass,type 都在sys.source$下存着
试图是dba_source,表是SOURCE$。
如果已经停止了web服务,删除用户时如果提示:“用户当前正被连接不能删除”时,需要杀掉该进程,
alter system kill session 'sid,serid#';

linux

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号