Oracle 19c数据库备份还原

1.expdp 备份

  1. 首先 使用sysdba登录

    sqlplus / as sysdba
  2. 查看当前容器,如果不正确需要切换到orcl的容器

    show con_name;
    alter session set container=orcl;
  3. 创建directory目录并对数据库用户该目录的赋权

    create or replace directory dumpdir as '/home/oracle/dump';
    grant read,write on directory dumpdir to ta;
  4. 退出到Linux 命令行

  5. 创建对应的directory目录

    mkdir -p /home/oracle/dump
  6. 使用expdp命令开始备份

    expdp ta/ta@192.168.86.34/orclpdb directory=dumpdir  schemas=ta dumpfile=ta0817.dmp logfile=ta0817.log

2.impdp 还原

前边5步同备份的过程

impdp ta/ta@192.168.87.59/orcl remap_schema=ta:ta remap_tablespace=ta:ta directory=dumpdir dumpfile=ta0817.dmp content=all logfile=ta0817.log

ps:可能会存在的问题

  1. 数据库连接串需要提前确认是否正确;

  2. dumpdir需要提前创建好;

  3. 如果目标数据库已有部分数据时,impdp还原时可以增加参数选择是否跳过或者追加、更新 【TABLE_EXISTS_ACTION】

  4. 当前验证的Oracle版本都为 19.3.0

3.expdp参数详解

参数名称默认值设置格式说明
ATTACHATTCH=[schema_name.]job_name设置客户会话与已存在的作业之间的联系
CONTENTALLCONTENT={ALL|DATA_ONLY|METADATA_ONLY}设置要导出的内容
DIRECTORYDIRECTORY=’文件目录’设置导出文件和导出日志文件的文件名称
DUMPFILEexpdat.dmpDUMPFILE=’文件名称.dmp’设置导出文件名称
ESTIMATEBLOCKSBLOCKS|STATISTICS设置计算磁盘空间的方法
ESTIMATE_ONLYNESTIMATE_ONLY={Y|N}只估算导出操作所需要的空间,而不执行导出
EXCLUDEEXCLUDE=对象类型.对象名称设置不导出对象
FILESIZE0(无限制)FILESIZE=整数[B|K|M|G]设置导出文件的大小
FLASHBACK_SCNFLASHBACK_SCN=SCN号只导出指定SCN时刻的表数据
FLASHBACK_TIMEFLASHBACK_TIME=“TO_TIMESTAMP(time-value)”只导出指定时间的表数据
FULLNFULL=Y是否导出全部数据库
HELPNHELP=Y是否显示EXPDP命令选项的帮助信息
INCLUDEINCLUDE=object_type [ : name_clause] [,…]设置要导出的对象,这个选项不能和EXCLUDE同时使用
JOB_NAMESYS_EXPORT<mode>NNJOB_NAME=作业名称设置导出作业的名称
LOG_FILEExport.logLOGFILE=[directory_object:]file_name设置导出日志文件的名称
NETWORK_LINKNETWORK_LINK=source_database_link设置数据库链名
NOLOGFILENNOLOGFILE={Y|N}禁止生成导出日志文件
PARALLEL1PARALLEL=整数设置并行导出的并行进程个数
PARFILEPARFILE=[directory_path]file_name使用参数文件设置参数
QUERYQUERY=[ schema.] [tablename:]query_clause在这个选项中指定WHERE条件诗句,使EXPDP只导出部分数据
SCHEMAS当前登录用户SCHEMAS=方案名称[,…]进行方案导出时要导出的方案名称
STATUS0STATUS=[整数]显示导出作业进程的详细状态
TABLESTABLES=[schema_name.]table_name [ : partition_name ] [,…]进行表导出时要导出的表名称
TABLESPACETABLESPACE=tablespace_name[,…]进行表空间导出时要导出的表空间名称
TRANSPORT_FULL_CHECKNTRANSPORT_FULL_CHECK={Y|N}是否检查被导出表与其他不导出表空间的关联
TRANSPORT_TABLESPACESTRANSPORT_TABLESPACES=Tablespace_name[,…]设置进行表空间传输模式导出
VERSIONCOMPATIBLEVERSION={COMPATIBLE|LATEST|version_string}设置导出对象的数据库版本

4.impdp参数详解

参数名称默认值设置格式说明
ATTACHATTACH=[schema_name.]job_name设置客户会话与已存在的作业之间的关联
CONTENTALLCONTENT={ALL|DATA_ONLY|METADATA_ONLY}设置要导出的内容,设置为ALL时,会导入对象定义及其数据;设置为DATA_ONLY时,只导入数据;设置为METADATA_ONLY时,只导入对象定义
DIRECTORYDIRECTORY=’文件目录’指定导入文件的目录
DUMPFILEexpdat.dmpDUMPFILE=’文件名称.dmp’指定导出文件名称
ESTIMATEBLOCKSBLOCKS|STATISTICS设置计算磁盘空间的方法
ESTIMATE_ONLYNESTIMATE_ONLY={Y|N}只估算导出操作所需要的表空间,而不执行导出
EXCLUDEEXCLUDE=对象类型.对象名称设置不导入的对象
FLASHBACK_SCNFLASHBACK_SCN=SCN号只导入SCN时刻的表数据
FLASHBACK_TIMEFLASHBACK_TIME=”TO_TIMESTAMP(time-value)”只导入指定时间的表数据
FULLNFULL=Y是否导入整个导出文件的全部数据库
HELPNHELP=Y是否显示IMPDP命令参数的帮助信息
INCLUDEINCLUDE=Object_type[:name_clause] [,…]设置要导入的对象,这个选项不能和EXCLUDE同时使用
JOB_NAMESYS_EXPORT<mode>NNJOB_NAME=作业名称设置导入作业的名称
LOG_FILEexport.logLOGFILE=[directory_object:]file_name设置导入日志文件的名称
NETWORK_LINKNETWORK_LINK=source_database_link设置执行导入操作的数据库链名
NOLOGFILENNOLOGFILE={Y|N}禁止生成导入日志文件
PARALLEL1PARALLEL=参数设置并行导入的并行进程个数
PARFILEPARFILE=[directory_path]file_name使用参数文件设置参数
QUERYQUERY=[schema.] [table_name:]query_clause在这个选项中指定WHERE条件诗句,使IMPDP只导入这个查询结果的数据
REMAP_DATAFILEREMAP_DATAFILE=source_datafile:target_datafile将源数据文件转变为目标数据文件名,在不同平台之间移动表空间时使用这个参数
REMAP_SCHEMAREMAP_SCHEMA=source_schema:target_schema将源方案的所有对象导入到目标方案中
REMAP_TABLESPACEREMAP_TABLESPACE=Source_tablespace:target_tablespace将源表空间的所有对象移到目标表空间中
REUSE_DATAFILESNREUSE_DATAFILES={Y|N}是否覆盖已存在的数据文件,设置为N时不覆盖
SCHEMAS当前登录用户SCHEMAS=方案名称[,…]方案导入时要导入的方案
SKIP_UNUSABLE_INDEXESNSKIP_UNUSABLE_INDEXES={Y|N}是否导入不能使用的索引
TABLESTABLES=[schema_name.]table_name[:partition_name] [,…]表导出时要导出的表名称
SQLFILESQLFILE=[directory_object:]file_name将导入过程中需要执行的DDL诗句写到指定的SQL脚本文件中
STATUS0STATUS=[整数]显示导入作业进程的详细状态
STREAMS_CONFIGURATIONYSTREAMS_CONFIGURATION={Y|N}设置是否要导入流源数据(Stream Metadata)
TABLE_EXISTS_ACTIONSKIPTABLE_EXISTS_ACTION={SKIP|APPEND|TRUNCATE|REPLACE}设置当表已经存在时应该执行的操作,SKIP表示跳过这张已存在的表,处理下一个对象;APPEND表示为表追加数据;TRUNCATE表示截断表,并为其追加数据;REPLACE表示删除已存在的表,重新建立表并添加数据
TABLESTABLES=[schema_name.]table_name[:partition_name]设置要导入的表名
TABLESPACESTABLESPACES=Tablespace_name[,…]表空间导入时要导入的表空间名称
TRANSFORMTRANSFORM=Transform_name:value[:object_type]设置是否修改建立对象的DDL语句
TRANSPORT_DATAFILESTRANSPORT_DATAFILES=datafile_name指定移动表空间时要导入到目标数据库的数据文件名称
TRANSPORT_TABLESPACESTRANSPORT_TABLESPACES=Tablespace_name[,…]进行表空间模式导入
TRANSPORT_FULL_CHECKNTRANSPORT_FULL_CHECK={Y|N}检查表空间之间的关联关系,这个值设置为y时,只要已移动的表空间和未移动的表空间存在关联关系,就提示出错;设置为N时,只检查单方依赖,例如如果索引表空间移动了,而基表表空间未移动,会出现错误消息。但如果基表移动了,而索引表空间未移动,则不提示出错
VERSIONCOMPATIBLEVERSION={COMPATIBLE|LATEST|version_string}指定目标数据库的数据库版本
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值