windows oracle如何导出dmp 从11g版本导入到12c 用exp
时间: 2024-10-19 18:09:51 浏览: 62
在Windows上,如果你想要从Oracle 11g版本数据库导出数据并将其转换为12c兼容的DMP文件(导出文件),你可以使用Oracle提供的`expdp`工具,它是`exp`命令的升级版,用于大数据泵(Database Pump)。以下是基本步骤:
1. **安装和配置Data Pump**:
- 确保你的系统上已经安装了Oracle Database 12c,并配置了正确的环境变量,包括ORACLE_HOME、TNS_ADMIN等。
2. **登录到源数据库**:
使用`sqlplus`命令作为SYSDBA用户登录到11g数据库:
```
sqlplus / as sysdba
```
3. **创建Data Pump出口目录**:
如果还没有,需要创建一个目录来存放export文件:
```
mkdir /path/to/export/directory
export_dir=</path/to/export/directory>
```
4. **导出数据**:
使用`expdp`命令导出数据,指定目标版本(12c)和导出路径:
```sql
expdp user/pwd@src_sid directory=exp_dir dumpfile=mydata.dmp format=dmp version=12.1.0.0.0 log_level=silent
```
将`user/pwd`替换为实际用户名和密码,`src_sid`为源数据库服务名,`mydata.dmp`为你希望的文件名。
5. **切换到12c数据库**:
登录到12c数据库作为SYSDBA用户:
6. **导入数据**:
切换回12c数据库后,使用`impdp`导入刚刚生成的DMP文件:
```sql
impdp user/pwd@dst_sid file=mydata.dmp logfile=myimport.log transportable=true validate_tablespace=true parallel=4
```
`dst_sid`是12c的目标数据库服务名,`validate_tablespace=true`确保表空间兼容性,`parallel`设置并行处理的数量。
7. **验证导入**:
导入后检查数据是否正确加载到12c数据库中,确认表结构和数据无误。
阅读全文