没有合适的资源?快使用搜索试试~ 我知道了~
oracle的impdp和expdp数据泵导入导出全备数据库-详细笔记文档总结
需积分: 5 17 下载量 88 浏览量
2023-06-30
21:54:48
上传
评论 2
收藏 32KB DOCX 举报
温馨提示
试读
5页
oracle的impdp和expdp数据泵导入导出全备数据库-详细笔记文档总结
资源推荐
资源详情
资源评论
oracle 的 impdp/expdp 数据泵导入导出全备数据库
1.oracle 的 impdp/expdp 数据泵导入导出 (本机的全数据库导入导出,整个过程数据库不停止)
a)建立测试数据:
[oracle@oracle ]$ sqlplus / as sysdba
SQL> create user shi1 identified by 123456;
SQL> grant dba to shi1;
SQL> create user shi2 identified by 123456;
SQL> grant dba to shi2;
SQL> exit
[oracle@oracle ~]$ sqlplus shi1/123456
SQL> create table test1 (username varchar2(10));
SQL> insert into test1 values('shi1');
SQL> insert into test1 values('shi2');
SQL>commit;
SQL> select * from test1;
USERNAME
----------
shi1
shi2
SQL> exit
[oracle@oracle~]$ sqlplus shi2/123456
SQL> create table test2 (username varchar2(10));
SQL> insert into test2 values('test1');
SQL> insert into test2 values('test2');
SQL> commit;
SQL> select * from test2;
USERNAME
----------
test1
test2
SQL> exit
b)先在操作系统中创建真正的要备份到的目录:
[root@oracle ~]# mkdir /home/oracle/bak
[root@oracle ~]# chmod -R 777 /home/oracle/bak/
[root@oracle ~]# chown -R oracle:oinstall /home/oracle/bak/
c)以 sys 用户或 system 用户创建逻辑目录:(要和上面真正目录一致)
(逻辑目录要和上面真正的目录要一致,该命令不会在操作系统创建真正的目录,所以需要在系统中先创
建真正的目录)
[oracle@oracle ~]$ sqlplus / as sysdba
SQL> create directory dump_dir as '/home/oracle/bak';
注意:此处是以 sys 用户创建的逻辑目录,也可以 system 用户登录创建逻辑目录,如下:(两种用户都可以)
[oracle@oracle ~]$ sqlplus system/oracle
SQL> create directory dump_dir as '/home/oracle/bak';
d)全备数据库(数据泵导出): #下面是:system 用户名/system 密码@数据库名(若 rac 可以是实例名)
[oracle@oracle~]$ expdp system/oracle@orcl directory=dump_dir dumpfile=fulldatabase.dmp
full=y
[oracle@oracle ~]$ ls /home/oracle/bak/
export.log fulldatabase.dmp
[oracle@oracle ~]$ du -sh /home/oracle/bak/*
44K /home/oracle/bak/export.log
55M /home/oracle/bak/fulldatabase.dmp
e)删除原来的所有创建的数据表:
[oracle@oracle~]$ sqlplus shi1/123456
SQL> drop table test1;
SQL> select * from test1;
select * from test1
*
ERROR at line 1:
ORA-00942: table or view does not exist
SQL> exit
[oracle@oracle ~]$ sqlplus shi2/123456
SQL> drop table test2;
SQL> select * from test2;
select * from test2
*
ERROR at line 1:
ORA-00942: table or view does not exist
SQL> exit
f)数据泵的 impdp 导入恢复数据:#下面是:system 用户名/system 密码@数据库名(若 rac 可以是实例名)
[oracle@oracle ~]$ impdp system/oracle@orcl directory=dump_dir dumpfile= fulldatabase.dmp
full=y
g)查看已经恢复的数据:
[oracle@oracle~]$ sqlplus shi1/123456
SQL> select * from test1;
USERNAME
----------
shi1
shi2
SQL> exit
[oracle@oracle~]$ sqlplus shi2/123456
SQL> select * from test2;
USERNAME
----------
test1
test2
SQL> exit
注意: 下面步骤如果是全部备份数据库可以不做,如果是备份单个表,单个表空间,单个模式时候,需
要创建(以 sys 用户登录创建或以 system 用户登录创建都可以),例子如:
以 sys 或 system 用户登录,创建一个用户 shi 并授权该用户对刚才创建的逻辑目录有读写权限:
即对 dump_dir(/home/oracle/bak)
[oracle@oracle ~]$ sqlplus / as sysdba
资源评论
运维实战帮
- 粉丝: 78
- 资源: 420
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功