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;