oracle数据库的导入导出及表空间的创建
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
oracle数据库的导入导出及表空间的创建
(1)向oracle数据库中导入完整的数据库(后缀名:dmp)
首先进入cmd,输入sqlplus/nolog运行oracle自带程序,然后输入conn/as sysdba,以数据库管理员(dba)的身份链接到后台数据库。
step1:建立临时表空间(取名为:libsys_temp)
create temporary tablespace libsys_temp
tempfile'D:\oracle\libsys_temp.dbf'//指定空间存放路径
size1000M//为临时表空间分配磁盘空间
autoextend on
next10M maxsize2048M//若存入的数据量超过了分配的空间大小,
//则以每次新增10M的大小增大表间,但最大为2048M!
extent management local;//设置表空间的区管理为本地管理,为的是减少分配extent的时
//候产生的内部递归sql,提高数据库分配空间的效率.
step2:建立数据表空间,用于存储导入的数据库中的所有数据(取名:libsys_data) create tablespace libsys_data
logging//指明导入过程记入日志中
datafile'D:\oracle\libsys_data.dbf'//指定数据库保存的路径size10240M//注意表空间应足够大,否则导入将出错!
autoextend on
next100M maxsize20480M
extent management local;
step3:创建用户并指定表空间(PS:需拥有dba权限)
create user libsys identified by abc123//设置用户名:libsys,码:abc123.
default tablespace libsys_data//为用户指定刚刚建立的表空间libsys_data,以便保存与此用户相关的所有数据.
temporary tablespace libsys_temp;//为用户指定临时表空间libsys_temp,以提高数据库运行效率.
step4:给用户授权(需授予dba,connect和resource三个权限,否则无法完成数据库导入)
grant dba,connect,resource to libsys;
step5:将拷贝来的完整的数据库文件(此处为:'libsys.dmp')导入到自己机器中的oracle数据库中
imp libsys/abc123file='D:\libsys.dmp'full=y ignore=y;
//full=y表示全部导入,ignore=y表示忽略数据库中已存在的表,否则可能出错。
(特别注意:在进行step5之前,需要输入“exit”命令退出并返回到'cmd'命令后,才能做导入导出操作!!!!)
另外:若只想将数据库dmp文件中的部分表(此处为:item表)导入,则只需加上表名即可,方法如下:
imp libsys/abc123file='D:\libsys.dmp'tables=(item);//其中的item为libsys.dmp数据库
文件中的一张表对象.
(2)将oracle数据库中的数据导出
A.导出完整的数据库(此处数据库为:libsys_data):
exp libsys/abc123file='D:\oracle\libsys.dmp'full=y;//full=y表示全部导出.
B.将指定用户的数据表导出(此处为:用户xdw和用户newuser):
exp libsys/abc123file='D:\oracle\libsys.dmp' owner=(xdw,newuser);
C.导出指定的数据库中的表(此处为:student表和teacher表):
exp libsys/abc123file='D:\oracle\libsys.dmp' tables=(student,teacher);
D.导出数据库中表的指定字段(此处为:学生姓名中的姓为"王")的数据(此处为:student表):
exp libsys/abc123file='D:\oracle\libsys.dmp'tables=(student) query=\"where studentName like'王%'\";