Oracle全量备份与恢复

环境

  • Oracle 11g
  • CentOS 7.6

前期准备(注意执行的用户,root or oracle)

1.新建Oracle数据库备份存放目录

[root@637c4d4d4af4 /]# mkdir –p /home/oracle/backup 

2.修改目录权限(Oracle在oracle用户下运行)

[root@637c4d4d4af4 /]# chown oracle:oinstall /home/oracle/backup
  1. 创建目录对象
# 切换到oracle用户
[root@637c4d4d4af4 /]# su oracle

# 切换到SQLPLUS环境
[oracle@637c4d4d4af4 ~]$ sqlplus /nolog

# 管理员身份登录
SQL> conn /as sysdba

# 制定EXPDP输出目录
SQL> create directory expdp_bak_dir as '/home/oracle/backup';

# 授予system权限
SQL> grant create any directory to system;

全量备份

  • 前期工作做好就可以开始备份了,下面是针对xm_uap这个用户进行全量备份的
# expdp_bak_dir 为上面创建的一个备份目录
# schemas 为要备份的用户对象
# compression=all 表示所有数据都进行压缩,可以大量减少备份文件大小
[oracle@637c4d4d4af4 ~]$ expdp system@helowin directory=expdp_bak_dir schemas=xm_uap dumpfile=backup.dmp logfile=backup.log compression=all
  • 生成的备份文件就在expdp_bak_dir指向的目录下,backup.dmp为数据备份文件,backup.log为备份过程中的日志

全量恢复

  • 恢复时记得先创建好对应的表空间,用户不需要创建
[oracle@637c4d4d4af4 ~]$ impdp system directory=expdp_bak_dir dumpfile=backup.dmp logfile=recover.log
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容