【Oracle】利用管道导入用户数据
2010-11-15 15:31
204 查看
在生产环境中,Oracle 数据库每天凌晨 3:00 进行全库数据备份,由于数据巨大,因此备份出来的数据都直接进行压缩保存,并按 db<MMDD>.dmp.gz 规则进行命名。
因测试要求,需将 db1113.dmp.gz 备份文件中的 cw 用户数据导入到测试服务器上,由于测试服务器中磁盘空间不足,无法正常将 db1113.dmp.gz 文件进行解压,因此使用 mknod -p 创建管道的方式进行用户数据导入。
$ df -g | grep Oracle
/dev/oralv 90.00 41.08 55% 17421 1% /Oracle
$ ls -l db1113.dmp.gz
-rw-r--r-- 1 root system 2804225957 Nov 13 12:58 db1113.dmp.gz
1. 删除 cwtest 用户及数据
$ sqlplus '/as sysdba'
SQL> DROP USER cwtest CASCADE;
2. 创建 cwtest 用户并授权
SQL> CREATE USER cwtest IDENTIFIED BY cw8899 DEFAULT TABLESPACE NNC_DATA01 TEMPORARY TABLESPACE temp;
SQL> GRANT connect,dba to cwtest;
SQL> exit
3. 通过 mknod -p 创建管道 /Oracle/imppipe
$ mknod /Oracle/imppipe p
4. 导入 cw 用户数据到 cwtest 用户
$ imp cwtest/cw8899 file=/Oracle/imppipe fromuser=cw touser=cwtest & gunzip < db1113.dmp.gz > /Oracle/imppipe
5. 删除管道
$ rm -fr /Oracle/imppipe
PS: 利用管道也可以在导出数据时直接进行压缩,参考指令如下:
$ mknod /Oracle/exppipe p
$ exp system/manager full=y inctype=complete file=/Oracle/exppipe & gzip -9 < /Oracle/exppipe > /Oracle/db1113.dmp.gz
$ rm -fr /Oracle/exppipe
因测试要求,需将 db1113.dmp.gz 备份文件中的 cw 用户数据导入到测试服务器上,由于测试服务器中磁盘空间不足,无法正常将 db1113.dmp.gz 文件进行解压,因此使用 mknod -p 创建管道的方式进行用户数据导入。
$ df -g | grep Oracle
/dev/oralv 90.00 41.08 55% 17421 1% /Oracle
$ ls -l db1113.dmp.gz
-rw-r--r-- 1 root system 2804225957 Nov 13 12:58 db1113.dmp.gz
1. 删除 cwtest 用户及数据
$ sqlplus '/as sysdba'
SQL> DROP USER cwtest CASCADE;
2. 创建 cwtest 用户并授权
SQL> CREATE USER cwtest IDENTIFIED BY cw8899 DEFAULT TABLESPACE NNC_DATA01 TEMPORARY TABLESPACE temp;
SQL> GRANT connect,dba to cwtest;
SQL> exit
3. 通过 mknod -p 创建管道 /Oracle/imppipe
$ mknod /Oracle/imppipe p
4. 导入 cw 用户数据到 cwtest 用户
$ imp cwtest/cw8899 file=/Oracle/imppipe fromuser=cw touser=cwtest & gunzip < db1113.dmp.gz > /Oracle/imppipe
5. 删除管道
$ rm -fr /Oracle/imppipe
PS: 利用管道也可以在导出数据时直接进行压缩,参考指令如下:
$ mknod /Oracle/exppipe p
$ exp system/manager full=y inctype=complete file=/Oracle/exppipe & gzip -9 < /Oracle/exppipe > /Oracle/db1113.dmp.gz
$ rm -fr /Oracle/exppipe
相关文章推荐
- Oracle 建立数据库,用户,表空间,数据导入
- Oracle sqldevelop的使用(数据即.dmp文件的导入,用户创建,创建连接)
- oracle数据迁移快速导入导出:利用sqluldr2导出数据和sqlldr导入数据的方法
- Oracle创建用户、表空间、导入导出数据的命令举例
- Oracle 导出、导入某用户所有数据(包括表、视图、存储过程...)
- Oracle建用户,建表空间,导入导出数据等语句
- Oracle 导出、导入某用户所有数据(包括表、视图、存储过程...)
- Oracle导入/出用户数据
- oracle创建用户导入数据
- 安装Oracle后用户登录,数据导入等一系列问题解决
- oracle用户数据导入
- 利用TOAD实现EXCEL数据在oracle的导入导出
- oracle 用 imp 导入数据 指定用户,密码,ip , 端口 和表单。
- Oracle 把一个用户的数据导入另一个用户 (数据泵)
- Oracle创建用户 授权 并导入数据 完整过程
- oracle创建表空间及用户,导出导入数据备份
- oracle按用户导入导出数据
- oracle创建用户,创建数据库,导入数据,赋予创建视图~创建触发器权限
- oracle创建用户,创建数据库,导入数据,赋予创建视图~创建触发器权限
- Oracle新建表空间,创建用户,授权和导入数据