【Database】Oracle数据库的备份与还原

1. 数据库备份

  1. 利用PL/SQL Server软件,使用待备份的数据库用户连接数据库,执行如下命令,创建并指定一个导出文件夹(文件夹路径根据Oracle安装所在系统类型进行设置)。
create or replace directory expfile as 'D:\export';
  1. 远程登录到Oracle数据库安装所在的服务器上,打开cmd终端或bash终端,按照如下命令格式执行命令,即可备份数据库文件至第1步中指定的文件夹下。
expdp username/password@dbname directory=expfile dumpfile='20210822_bak.dmp'
# username: 数据库用户名
# password: 数据库口令
# dbname: 待备份的数据库实例名
# directory: 导出的文件夹别名,需与第一步中指定的名字保持一致
# dumpfile: 数据库导出后保存的文件名称,自定义

2. 数据库迁移恢复

  1. 与数据库备份类似,利用PL/SQL Server软件,使用数据库管理员身份(sysdba)登录数据库服务器,执行如下命令,手动创建一个新的数据库表空间和用户名(如果是还原已有的数据库实例,则可略过此步骤)。
-- 创建表空间-- 创建表空间
create tablespace new_tablespace_name    -- 名字自定义
logging
datafile 'D:\app\boyce\oradata\orcl\new_tablespace_name.dbf'   -- 根据Oracle数据库所在服务器的系统类型进行修改
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;

-- 创建用户,并赋予临时表空间和默认表空间
create user username identified by password
default tablespace new_tablespace_name   -- 与第一行保持一致
temporary tablespace TEMP;           -- 保持默认即可

-- 给用户授权
grant connect, resource, dba to username;
  1. 利用PL/SQL Server软件,使用第1步创建的新用户名和密码(或已有数据库实例对应的用户名和密码)登录数据库执行如下命令,创建并指定一个导入文件夹(文件夹路径根据Oracle安装所在系统类型进行设置)。
create or replace directory impfile as 'D:\import';
  1. 最后,将待恢复的数据库文件拷贝至D:\import路径下后,打开cmd终端或bash终端,按照如下命令格式执行命令,即可将指定的数据库文件恢复至指定的数据库实例中。
impdp username/password@dbname directory=impfile dumpfile='20210822_bak.dmp' REMAP_SCHEMA=old_username:new_username REMAP_TABLESPACE=old_spacetable:new_tablespace_name
# username: 数据库用户名
# password: 数据库口令
# dbname: 待恢复的数据库实例名
# directory: 导入的文件夹别名,需与第2步中指定的名字保持一致
# dumpfile: 待恢复的数据库文件名,需与文件夹下的文件名保持一致
# REMAP_SCHEMA: 如果原用户名与新用户名不同,则加入此部分,否则忽略
# REMAP_TABLESPACE: 如果原数据库表空间名与新数据库表空间名不同,则加入此部分,否则忽略
posted @   次次次不吃饼干  阅读(15)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示