oracle创建表空间,创建用户
关键字: oracle 表空间 用户
//创建临时表空间
create temporary tablespace test_temp
tempfile 'E:/oracle/product/10.2.0/oradata/testserver/test_temp01.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;
//创建数据表空间
create tablespace test_data
logging
datafile 'E:/oracle/product/10.2.0/oradata/testserver/test_data01.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent management local;
//创建用户并指定表空间
create user username identified by password
default tablespace test_data
temporary tablespace test_temp;
//给用户授予权限
grant connect,resource to username;
//以后以该用户登录,创建的任何数据库对象都属于test_temp 和test_data表空间,这就不用在每创建一个对象给其指定表空间了。
oracle表空间操作详解
1oracle表空间操作详解
2
3作者: 来源: 更新日期:2006-01-04
4
5
6
7建立表空间
8
9CREATE TABLESPACE data01
10DATAFILE '/oracle/oradata/db/DATA01.dbf' SIZE 500M
11UNIFORM SIZE 128k; #指定区尺寸为128k,如不指定,区尺寸默认为64k
12
13删除表空间
14
15DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;
16
17修改表空间大小
alter database datafile '/path/NADDate05.dbf' resize 100M
移动表至另一表空间
alter table move tablespace room1;
18一、建立表空间
19
20CREATE TABLESPACE data01
21DATAFILE '/oracle/oradata/db/DATA01.dbf' SIZE 500M
22UNIFORM SIZE 128k; #指定区尺寸为128k,如不指定,区尺寸默认为64k
23
24二、建立UNDO表空间
25
26CREATE UNDO TABLESPACE UNDOTBS02
27DATAFILE '/oracle/oradata/db/UNDOTBS02.dbf' SIZE 50M
28
29#注意:在OPEN状态下某些时刻只能用一个UNDO表空间,如果要用新建的表空间,必须切换到该表空间:
30
31ALTER SYSTEM SET undo_tablespace=UNDOTBS02;
32
33三、建立临时表空间
34
35CREATE TEMPORARY TABLESPACE temp_data
36TEMPFILE '/oracle/oradata/db/TEMP_DATA.dbf' SIZE 50M
37
38四、改变表空间状态
39
401.使表空间脱机
41
42ALTER TABLESPACE game OFFLINE;
43
44如果是意外删除了数据文件,则必须带有RECOVER选项
45
46ALTER TABLESPACE game OFFLINE FOR RECOVER;
47
482.使表空间联机
49
50ALTER TABLESPACE game ONLINE;
51
52
533.使数据文件脱机
54
55ALTER DATABASE DATAFILE 3 OFFLINE;
56
574.使数据文件联机
58
59ALTER DATABASE DATAFILE 3 ONLINE;
60
615.使表空间只读
62
63ALTER TABLESPACE game READ ONLY;
64
656.使表空间可读写
66
67ALTER TABLESPACE game READ WRITE;
68
69五、删除表空间
70
71DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;
72
73六、扩展表空间
74
75首先查看表空间的名字和所属文件
76
77select tablespace_name, file_id, file_name,
78round(bytes/(1024*1024),0) total_space
79from dba_data_files
80order by tablespace_name;
81
821.增加数据文件
83 ALTER TABLESPACE game
84 ADD DATAFILE '/oracle/oradata/db/GAME02.dbf' SIZE 1000M;
85
862.手动增加数据文件尺寸
87 ALTER DATABASE DATAFILE '/oracle/oradata/db/GAME.dbf'
88 RESIZE 4000M;
89
903.设定数据文件自动扩展
91 ALTER DATABASE DATAFILE '/oracle/oradata/db/GAME.dbf
92 AUTOEXTEND ON NEXT 100M
93 MAXSIZE 10000M;
94
95设定后查看表空间信息
96
97 SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES USED, C.BYTES FREE,
98 (B.BYTES*100)/A.BYTES "% USED",(C.BYTES*100)/A.BYTES "% FREE"
99 FROM SYS.SM$TS_AVAIL A,SYS.SM$TS_USED B,SYS.SM$TS_FREE C
100 WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME AND A.TABLESPACE_NAME=C.TABLESPACE_NAME;
101
102
103
104
Oracle表空间的操作
1.创建
表空间
- SQL> create tablespace testspace
- datafile 'd:/OracleTest/test001.dbf' size 10m autoextend on next 5m maxsize unlimited
- extent management local ;
SQL> create tablespace testspace datafile 'd:/OracleTest/test001.dbf' size 10m autoextend on next 5m maxsize unlimited extent management local ;
2.给
表空间添加
数据文件
- SQL> alter tablespace testspace add datafile 'd:/OracleTest/test002.dbf' size 5m
- autoextend on next 3m maxsize 50m;
SQL> alter tablespace testspace add datafile 'd:/OracleTest/test002.dbf' size 5m autoextend on next 3m maxsize 50m;
3.删除
表空间中的
数据文件
- SQL> alter tablespace testspace drop datafile 'd:/OracleTest/test002.dbf';
SQL> alter tablespace testspace drop datafile 'd:/OracleTest/test002.dbf';
4.修改
表空间文件的
数据文件大小
- SQL> alter database datafile 'd:/OracleTest/test001.dbf' resize 10m;
SQL> alter database datafile 'd:/OracleTest/test001.dbf' resize 10m;
5.修改
表空间
数据文件的自动增长属性
- SQL> alter database datafile 'd:/OracleTest/test001.dbf' autoextend off;
SQL> alter database datafile 'd:/OracleTest/test001.dbf' autoextend off;
6.修改
表空间的读写属性
- SQL> alter tablespace testspace read only;(只读)
-
- SQL> alter tablespace testspace read write;(读写)
SQL> alter tablespace testspace read only;(只读) SQL> alter tablespace testspace read write;(读写)
7.设置
表空间脱/联机
- SQL> alter tablespace testspace offline;
-
- SQL> alter tablespace testspace online;
SQL> alter tablespace testspace offline; SQL> alter tablespace testspace online;
8.转移物理文件路径的操作
- (1)设置表空间脱机 alter tablespac testspace offline;
-
- (2)物理转移表空间文件;即把你的表空间物理文件转移到你想移动的路径
-
- (3)逻辑转移:alter tablespace testspace rename datafile 'd:/OracleTest/test001.dbf' to 'e:/test001.dbf';
-
- (4)设置表空间联机 alter tablespace testspace online;
(1)设置表空间脱机 alter tablespac testspace offline; (2)物理转移表空间文件;即把你的表空间物理文件转移到你想移动的路径 (3)逻辑转移:alter tablespace testspace rename datafile 'd:/OracleTest/test001.dbf' to 'e:/test001.dbf'; (4)设置表空间联机 alter tablespace testspace online;
9.删除
表空间
- (1)不删文件 drop tablespace testspace;
-
- (2)删除文件 drop tablespace testspace including contents and datafiles;
(1)不删文件 drop tablespace testspace; (2)删除文件 drop tablespace testspace including contents and datafiles;
10.物理文件被非法删除时,怎样启动数据库
- (1)关闭数据库服务 shutdown
-
- (2)alter database datafile 'd:/test001.dbf' offline drop;
-
- (3)alter database open;
-
- (4)开启数据库服务 startup;
(1)关闭数据库服务 shutdown (2)alter database datafile 'd:/test001.dbf' offline drop; (3)alter database open; (4)开启数据库服务 startup;
11、查看
表空间名
- Select distinct Tablespace_Name from tabs;
- select tablespace_name from user_tablespaces;
Select distinct Tablespace_Name from tabs; select tablespace_name from user_tablespaces;