Oracle 笔记(五)、表空间管理

简介:
1、创建和设置表空间

CREATE TABLESPACE mydb2
  DATAFILE 'D:\oracle\product\10.2.0\oradata\test\MYDB4.DBF'
  SIZE 30M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED,
  'D:\oracle\product\10.2.0\oradata\test\MYDB5.DBF'
  SIZE 20M AUTOEXTEND ON NEXT 5 MAXSIZE 100M;

ALTER DATABASE DATAFILE 'D:\oracle\product\10.2.0\oradata\test\MYDB4.DBF' RESIZE 40M;

ALTER DATABASE DATAFILE 'D:\oracle\product\10.2.0\oradata\test\MYDB5.DBF'
  AUTOEXTEND ON NEXT 10M 
  MAXSIZE UNLIMITED;

ps.
如果文件不存在,则 DATAFILE 需要 SIZE;如果文件存在,则 DATAFILE 需要指定 REUSE 关键字。



2、更改用户默认表空间,并授权

ALTER USER kiant DEFAULT TABLESPACE mydb2;

SELECT USERNAME, DEFAULT_TABLESPACE FROM dba_users;

GRANT UNLIMITED TABLESPACE, DBA TO kiant;



3、创建表并插入测试数据

CREATE TABLE k7 (a1 VARCHAR2(255));

SELECT * FROM dba_tables WHERE table_name= 'K7';

INSERT INTO  k7 SELECT sys_guid() FROM dual CONNECT BY LEVEL <=10000;

COMMIT;

SELECT * FROM k7 WHERE ROWNUM<=5;



4.1、用户级数据导入导出

ALTER TABLESPACE mydb2 READ ONLY;
ho $ exp userid=kiant/love2you@test file=d:\123.dmp;

ALTER TABLESPACE mydb2 READ WRITE;
ho $ imp userid=kiant/love2you@test file=d:\123.dmp full=y ignore=y rows=n;
ho $ imp userid=kiant/love2you@test file=d:\123.dmp full=y ignore=y rows=y buffer=64000;

ps.
导入时应优先导入所有数据库结构 rows=n;然后才导入结构和数据 rows=y。


4.2、表空间数据导入导出

ALTER TABLESPACE mydb2 READ ONLY;
ho $ exp userid=kiant/love2you@test file=d:\124.dmp tablespaces=mydb2;

ho $ imp userid=kiant/love2you@test file=d:\124.dmp tablespaces=mydb2 full=y ignore=y rows=n;
ho $ imp userid=kiant/love2you@test file=d:\124.dmp tablespaces=mydb2 full=y ignore=y rows=y buffer=64000;


4.3、表空间迁移

ALTER TABLESPACE mydb2 READ ONLY;
ho $ exp userid='sys/love2you as sysdba' file=d:\mydb2.dmp tablespaces=mydb2 transport_tablespace=y;

DROP TABLESPACE mydb2 INCLUDING CONTENTS;
ho $ imp userid='sys/love2you as sysdba' file=d:\mydb2.dmp tablespaces=mydb2 transport_tablespace=y
  datafiles=D:\oracle\product\10.2.0\oradata\test\MYDB4.DBF, D:\oracle\product\10.2.0\oradata\test\MYDB5.DBF;

ps.
a.必须以 'sysdba' 身份连接,才能进行时间点恢复或可传输的表空间导入。
b.搬移表空间时,源表空间中存放的所有数据对象的所有者在目标数据库中必须存在,如果不存在,则应在导入表空间之前建立相应的用户,然后再导入表空间。



参考文件:
数据库迁移几种方式
[推荐]移动Oracle的表空间
使用Oracle 的 imp ,exp 命令实现数据的导入导出

Oracle利用传输表空间导出导入数据的步骤


本文转自 qvodnet 51CTO博客,原文链接:http://blog.51cto.com/bks2015/1982988


相关文章
|
6月前
|
Oracle 安全 关系型数据库
【Oracle】玩转Oracle数据库(六):模式对象管理与安全管理
【Oracle】玩转Oracle数据库(六):模式对象管理与安全管理
83 10
|
6月前
|
SQL Oracle 关系型数据库
【Oracle】玩转Oracle数据库(三):数据库的创建和管理
【Oracle】玩转Oracle数据库(三):数据库的创建和管理
158 5
|
6月前
|
存储 Oracle NoSQL
Oracle 表空间、数据文件、schema的关系
Oracle 表空间、数据文件、schema的关系
187 2
|
6月前
|
运维 Oracle 容灾
Oracle dataguard 容灾技术实战(笔记),教你一种更清晰的Linux运维架构
Oracle dataguard 容灾技术实战(笔记),教你一种更清晰的Linux运维架构
|
3月前
|
Oracle 关系型数据库 数据库
[oracle]拆分多用户的公共表空间
[oracle]拆分多用户的公共表空间
|
5月前
|
Oracle 关系型数据库 数据库
oracle基本操作笔记分享
oracle基本操作笔记分享
40 0
|
6月前
|
存储 Oracle 关系型数据库
实验三 Oracle数据库的创建和管理
实验三 Oracle数据库的创建和管理
75 1
|
6月前
|
Oracle 关系型数据库
Oracle 管理诊断数据工具ADRCI
Oracle 管理诊断数据工具ADRCI
73 2
|
6月前
|
SQL Oracle 关系型数据库
Oracle 数据泵导出导入(映射表空间、Schema)
Oracle 数据泵导出导入(映射表空间、Schema)
|
6月前
|
Oracle 关系型数据库 数据库
Oracle 11gR2学习之三(创建用户及表空间、修改字符集和Oracle开机启动)
Oracle 11gR2学习之三(创建用户及表空间、修改字符集和Oracle开机启动)