Oracle备份恢复简单过程以及中间的坑.

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle备份恢复简单过程以及中间的坑.相关的知识,希望对你有一定的参考价值。

 Oracle

冷备:

貌似需要dbca创建一致的oracle instance 服务器配置版本尽量相同,安装路径相同.

关闭Oracle服务

将oracle app 目录下的oradata以及有快速闪回区的话中的control文件复制到新的服务器里面 注意是完全一致的目录

如果有自己的业务库的数据 也得移动到相同的目录中,

启动恢复到数据库的数据库服务, 如果正常立即可用.

热备:

exp expdp imp impdp rman 暂时不写了 用的少.

exp/imp 的方式速度较慢 但是兼容性较好 高低版本都有 不过貌似12c开始oracle要慢慢的不用这种陈旧的备份恢复方式了

优点:客户端运行 比较简单 不考虑linux  winserver的区别等.

exp system/[email protected] owner=username file=c:\backupdir\dumpname.dump lot=c:\somedir\log.txt

导入:

需要创建需要恢复库的表空间以及用户等, 不然oracle会报错

创建语句

sqlplus / as sysdba 或执行相关命令, 

表空间:

create bigfile(可选) tablespace talespacename datafile ‘dir\data.dbf‘ size 100m autoextend on next 100m;

用户

create user username default tablespace tablespacename identified by password

权限

测试环境的话赋权多一点... 不过这一点就暴露自己的菜鸟属性了..

grant dba,resource,connect,create any table,create any view,create any sequence,unlimited tablespce to username

然后 

imp system/[email protected] fromuser=username touser=username file=backdumpwithdirectory.dmp log=xxxx.log

注意 oracle11.2.0.1 以及几个低版本有bug 会导致exp时部分空表导不出来 造成环境不可用,所以还是建议用expdp

expdp 需要创建directory 所以建议在服务器端执行

方法 :

sqlplus / as sysdba

create directory as ‘ directory‘

然后在command里面执行

expdp system/password directory=dir schemas=username dumpfile=some logfile=some

恢复时

先创建表空间和用户

用户的权限不需要赋予了备份恢复时会自动加上

impdp system/password directory=dir schemas=username dumpfile=some logfile=some

比较简单 像是parallel 以及其他参数可以慢慢学习使用.

以上是关于Oracle备份恢复简单过程以及中间的坑.的主要内容,如果未能解决你的问题,请参考以下文章

oracle数据库如何备份与恢复

Oracle简单的备份和恢复-导入和导出

RMAN备份与恢复--认识RMAN

Oracle_高级功能(10) 备份恢复

Oracle简单的备份和恢复-导出和导入

oracle如何备份单表并在新数据库恢复?