Oracle学习笔记第十一天
备份和恢复和迁移
这活按我猜想应该是DBA的活,没有往这方面发展的想法,所以笔记做得简单点了…
概念:
-
备份
备份就是把数据库复制到转储设备的过程
-
恢复
恢复就是把数据库由存在故障的状态转变为无故障状态的过程
-- 语法
-- 用EXP命令导出数据
exp username/password [PARAMETER=value]…
-- 用IMP命令导入数据
imp username/password [PARAMETER=value]…
导入导出数据库对象四种模式:完全数据库、表、用户、表空间。
注意:这个操作不是在PLSQL里面,而是在cmd命令窗口里面。
在cmd命令窗口输入 exp help=y 可以查看到导出的所有帮助。
常用的:USERID、FULL、CONSTRAINTS等等
导出命令:
exp userid=用户名/密码@数据库名 [ file=想保存的位置 ] 导出内容
举例:
exp userid=system/orcl@orcl file=d:\database.dmp full=y
常见的操作举例:
-----导出完整数据库
exp userid=system/orcl@orcl file=d:\database.dmp full=y
-----导出指定的表
exp userid=scott/tiger@orcl file=d:\tables.dmp tables=(emp,dept)
-----导出SCOTT用户创建的所有对象
exp userid=scott/tiger@orcl file=d:\scott.dmp owner=scott
-----导出mytbs表空间的所有数据
exp userid=system/orcl@orcl file=d:\tablespace.dmp tablespaces=(mytbs)
-----导入指定的表
imp userid=scott/tiger@orcl file=d:\tables.dmp tables=(emp,dept)
-----导入SCOTT用户创建的所有对象
imp userid=scott/tiger@orcl file=d:\scott.dmp
----跨用户导入数据(scott--->pptt)
imp userid=system/orcl@orcl file=d:\scott.dmp fromuser=scott touser=pptt
-----导入mytbs表空间的所有数据
imp userid=system/orcl@orcl file=d:\tablespace.dmp full=y
数据泵
-----进入sqlplus
sqlplus /nolog
-----以超级管理员账号登录数据库
conn sys/orcl@orcl as sysdba;
----创建目录(注意硬盘上要存在目录:d:\dump_dir)
create directory dump_dir as 'd:\dump_dir';
----授予用户对此目录的操作权限
grant read,write on directory dump_dir to scott;
----退出sqlplus,输入dos命令
exit;
----导出SCOTT用户创建的所有对象
expdp userid=scott/tiger@orcl directory=dump_dir dumpfile=scott_dump.dmp schemas=scott
-----导入SCOTT用户创建的所有对象
impdp userid=scott/tiger@orcl directory=dump_dir dumpfile=scott_dump.dmp schemas=scott