Oracle 还原数据 (dmp 文件)

本文介绍Oracle数据库的基本操作流程,包括用户登录、创建表空间、创建用户、赋予用户权限及数据导入等步骤。适用于初学者快速上手Oracle数据库管理。

cmd 操作

1,用户登录

sqlplus wdit/wdit@orcl (用户名/密码@实例名) 


 2,创建表空间 (相当于 mssql 的 数据库)


create tablespace changningldj  
datafile 'F:\Oracledb\changningldj.dbf' size 150M
default storage (initial 500K   
Next 500K  
minextents 1  
maxextents unlimited  
pctincrease 0); 


3,创建用户

 

create user changningldj identified by changningldj default tablespace changningldj;


(create user 用户名 identified by 密码 default tablespace 表空间;)


4,用户赋予权限  

grant dba to changningldj;

退出登录  


5, 导入数据

IMP changningldj/changningldj@orcl full=y file=F:/ldj.dmp log=F:/changningldj.txt


指定用户导入 

imp wdit/wdit@orcl fromuser=changningldj touser=changningldj file=F:/ldj.dmp log=F:/changningldj.txt

(fromuser 备份文件的数据用户,touser 导入新数据的用户)






### Oracle 19c 导入DMP文件工具 `impdp` 使用方法 #### 准备工作 为了成功导入 `.dmp` 文件Oracle 数据库,需提前完成如下准备工作: - **安装并配置好 Oracle Database**:确保已正确安装 Oracle 19c 并能正常启动实例[^1]。 - **创建表空间 (Tablespace)** 和 **用户 (User)** :通过 SQL*Plus 或其他客户端连接到目标数据库,执行相应SQL语句来定义新的存储区域以及拥有者账号。 ```sql CREATE TABLESPACE my_tablespace DATAFILE 'my_datafile.dbf' SIZE 10M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED; CREATE USER my_user IDENTIFIED BY password DEFAULT TABLESPACE my_tablespace QUOTA UNLIMITED ON my_tablespace; GRANT CONNECT, RESOURCE TO my_user; ``` 上述脚本中的参数应依据实际情况调整,比如路径、大小等设置[^2]。 #### 执行 `impdp` 命令 当环境准备完毕之后,可以采用 Data Pump Import (`impdp`) 实用程序来进行实际的数据迁移操作。此命令通常位于 `$ORACLE_HOME/bin` 下面,默认情况下具有可执行权限。 基本语法结构如下所示: ```bash impdp username/password@[host:]service_name \ DIRECTORY=data_pump_directory \ DUMPFILE=dump_file_name.dmp \ FULL=Y|N \ TABLE_EXISTS_ACTION=SKIP|APPEND|TRUNCATE|REPLACE \ LOGFILE=log_filename.log ``` 具体选项解释: - `username/password`: 登录凭证; - `[host:]service_name`: 可选部分指定远程主机地址和服务名称; - `DIRECTORY`: 指定之前已经建立好的目录对象名字; - `DUMPFILE`: 要加载的转储集文件名; - `FULL`: 是否完全恢复整个模式还是仅限于特定的对象; - `TABLE_EXISTS_ACTION`: 当遇到同名表格时采取的动作; - `LOGFILE`: 日志记录位置[^3]。 例如,假设有一个名为 `example_dump.dmp` 的备份文件存放在 `/u01/app/oracle/dpdumps/` 目录下,并希望将其全部内容迁移到本地运行的服务名为 `orclpdb1` 的 PDB 中,则对应的指令可能是这样的: ```bash impdp system/administrator@localhost:1521/orclpdb1 \ DIRECTORY=my_dpdump_dir \ DUMPFILE=example_dump.dmp \ FULL=Y \ TABLE_EXISTS_ACTION=REPLACE \ LOGFILE=/tmp/import_example_dump_%U.log ``` 这里需要注意的是,如果是在 Linux 系统上部署的话,可能还需要额外赋予足够的读取权限给这些外部资源文件夹以便让 Oracle 进程能够访问它们[^4]。 另外,在某些特殊场景里可能会涉及到字符集转换等问题,因此建议事先确认源端与目的端之间的兼容情况,必要时可通过修改初始化参数等方式解决潜在冲突[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值