1.说明
由于运行在云上的Oracle数据库暂无本地备份,为了保障租户业务系统的可持续性以及数据安全,特此进行数据库备份本地部署并进行测试。
2.备份策略
(1)数据库数据量
SQL> select sum(bytes)/1024/1024/1024 from dba_segments;
SUM(BYTES)/1024/1024/1024
-------------------------
98.9221191
(2)策略内容
根据租户数据量查询统计结果以及租户的业务场景,将租户数据库的备份策略设定如下:
备份类型:逻辑备份
备份方式:采用数据泵expdp导出方式
备份时间:每日0:00
备份保留时间:30天
3.备份部署准备
(1)环境准备
创建存储挂载目录:
mkdir /backup
chown oracle:oinstall /backup
(2)挂载备份存储
mount -t nfs -o vers=3,nolock 10.216.83.205:/ /backup
(3)创建备份存储目录
cd /backup
mkdir fullbackup
(4)创建备份路径
create directory fullbackup as '/backup/fullbackup';
grant read,write on directory fullbackup to public;
4.备份脚本测试
脚本测试环境为本地Oracle测试环境。
1.创建测试用户
create user c##test identfied by test;
grant dba to c##test;
conn c##test/test;
create table test0827 as select * from dba_objects;
create directory fullbackup as ‘/backup/fullbackup’;
grant read,write on directory fullbackup to public;
2.脚本内容
[oracle@rhel fullbackup]$ more fullbackup.sh
#!/bin/sh
#Oracle环境设置
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1
export ORACLE_SID=ora12c1
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export PATH=$PATH:/u01/app/oracle/product/12.1.0/db_1/bin:$ORACLE_HOME/OPatch
DMP_FILE=fullbackup_expdp_$(date +%Y%m%d%H%M).dmp
LOG_FILE=fullbackup_expdp_$(date +%Y%m%d%H%M).log
#expdp导出数据库开始
expdp 'system/"J(oXhc6bo3"' full=y directory=fullbackup DUMPFILE=$DMP_FILE logfile=$LOG_FILE;
3.执行测试脚本
[oracle@rhel fullbackup]$ chmod +x fullbackup.sh
[oracle@rhel fullbackup]$ ll
总用量 4
-rwxr-xr-x. 1 oracle oinstall 562 8月 27 15:51 fullbackup.sh
[oracle@rhel fullbackup]$ sh fullbackup.sh
Export: Release 23.0.0.0.0 - Production on 星期二 8月 27 15:51:08 2024
Version 23.4.0.24.05
Copyright (c) 1982, 2024, Oracle and/or its affiliates. All rights reserved.
连接到: Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for Free
警告: 连接到容器数据库的根或种子时通常不需要 Oracle Data Pump 操作。
启动 "SYSTEM"."SYS_EXPORT_FULL_01": "system/********" full=y directory=fullbackup DUMPFILE=fullbackup_expdp_20240827.dmp logfile=fullbackup_expdp_20240827.log
处理对象类型 DATABASE_EXPORT/EARLY_OPTIONS/VIEWS_AS_TABLES/TABLE_DATA
处理对象类型 DATABASE_EXPORT/NORMAL_OPTIONS/TABLE_DATA
处理对象类型 DATABASE_EXPORT/NORMAL_OPTIONS/VIEWS_AS_TABLES/TABLE_DATA
处理对象类型 DATABASE_EXPORT/SCHEMA/TABLE/TABLE_DATA
处理对象类型 DATABASE_EXPORT/SCHEMA/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
处理对象类型 DATABASE_EXPORT/SCHEMA/TABLE/STATISTICS/TABLE_STATISTICS
处理对象类型 DATABASE_EXPORT/TABLESPACE
处理对象类型 DATABASE_EXPORT/PROFILE
处理对象类型 DATABASE_EXPORT/SCHEMA/USER
处理对象类型 DATABASE_EXPORT/RADM_FPTM
处理对象类型 DATABASE_EXPORT/GRANT/SYSTEM_GRANT/PROC_SYSTEM_GRANT/RULE
处理对象类型 DATABASE_EXPORT/GRANT/SYSTEM_GRANT/PROC_SYSTEM_GRANT/AQ
处理对象类型 DATABASE_EXPORT/GRANT/SYSTEM_GRANT/PROC_SYSTEM_GRANT/SQL
处理对象类型 DATABASE_EXPORT/GRANT/SYSTEM_GRANT/PROC_SYSTEM_GRANT/JVM
处理对象类型 DATABASE_EXPORT/SCHEMA/GRANT/SYSTEM_GRANT
处理对象类型 DATABASE_EXPORT/SCHEMA/ROLE_GRANT
处理对象类型 DATABASE_EXPORT/SCHEMA/DEFAULT_ROLE
处理对象类型 DATABASE_EXPORT/SCHEMA/ON_USER_GRANT
处理对象类型 DATABASE_EXPORT/SCHEMA/TABLESPACE_QUOTA
处理对象类型 DATABASE_EXPORT/RESOURCE_COST
处理对象类型 DATABASE_EXPORT/TRUSTED_DB_LINK
处理对象类型 DATABASE_EXPORT/DIRECTORY/DIRECTORY
处理对象类型 DATABASE_EXPORT/DIRECTORY/GRANT/OWNER_GRANT/OBJECT_GRANT
处理对象类型 DATABASE_EXPORT/DIRECTORY/GRANT/CROSS_SCHEMA/OBJECT_GRANT
处理对象类型 DATABASE_EXPORT/SYSTEM_PROCOBJACT/PRE_SYSTEM_ACTIONS/PROCACT_SYSTEM/LOGREP
处理对象类型 DATABASE_EXPORT/SYSTEM_PROCOBJACT/PRE_SYSTEM_ACTIONS/PROCACT_SYSTEM/RMGR
处理对象类型 DATABASE_EXPORT/SYSTEM_PROCOBJACT/PROCOBJ/RMGR
处理对象类型 DATABASE_EXPORT/SYSTEM_PROCOBJACT/PROCOBJ/SCHEDULER
处理对象类型 DATAB