资源描述:
《oracle表空间的几个操作汇总》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、Oracle表空间的几个操作一、Oracle系统中有表来存放表空间信息、空间块、对应文件、对应用户等。主要集中在dba_tablespacesdba_free_spacedba_data_filesuser_users二、Oracle创建表空间CREATESMALLFILETABLESPACE"SMALLSPACE"LOGGINGDATAFILE'E:ORACLEPRODUCT10.2.0ORADATAGLOBE1SMALLSPACE.ora'SIZE2MEXTENTMANAGEMENTLOCALSEGMENTSPACEMANAGEMENTAUTOSELECT
2、A.TABLESPACE_NAME,A.BYTESTOTAL,B.BYTESUSED,C.BYTESFREE,(B.BYTES*100)/A.BYTES"%USED",(C.BYTES*100)/A.BYTES"%FREE"FROMSYS.SM$TS_AVAILA,SYS.SM$TS_USEDB,SYS.SM$TS_FREECWHEREA.TABLESPACE_NAME=B.TABLESPACE_NAMEANDA.TABLESPACE_NAME=C.TABLESPACE_NAME;三、删除表空间 DROPTABLESPACEdata01INCLUDINGCONTENTS
3、ANDDATAFILES;先删除sde用户,再删除sde表空间。DROPTABLESPACESDEINCLUDINGCONTENTScascadeconstraints;四、改变表空间状态 1.使表空间脱机 ALTERTABLESPACEgameOFFLINE; 如果是意外删除了数据文件,则必须带有RECOVER选项 ALTERTABLESPACEgameOFFLINEFORRECOVER; 2.使表空间联机 ALTERTABLESPACEgameONLINE; 3.使数据文件脱机 ALTERDATABASEDATAFILE3OFFLINE; 4.使数据
4、文件联机 ALTERDATABASEDATAFILE3ONLINE; 5.使表空间只读 ALTERTABLESPACEgameREADONLY; 6.使表空间可读写 ALTERTABLESPACEgameREADWRITE;五、删除表空间 DROPTABLESPACEdata01INCLUDINGCONTENTSANDDATAFILES;六、扩展表空间 首先查看表空间的名字和所属文件 selecttablespace_name,file_id,file_name, round(bytes/(1024*1024),0)total_space fromdb
5、a_data_files orderbytablespace_name; 1.增加数据文件 ALTERTABLESPACEgame ADDDATAFILE'/oracle/oradata/db/GAME02.dbf'SIZE1000M; 2.手动增加数据文件尺寸 ALTERDATABASEDATAFILE'/oracle/oradata/db/GAME.dbf' RESIZE4000M; 3.设定数据文件自动扩展 ALTERDATABASEDATAFILE'/oracle/oradata/db/GAME.dbf' AUTOEXTENDONNEXT100
6、M MAXSIZE10000M;Sql语句扩大表空间:ALTERDATABASEDATAFILE'E:ORACLEPRODUCT10.2.0ORADATAGLOBE1DG'RESIZE15000M七、表空间查询1查看表空间selecta.a1表空间名称,c.c2类型,c.c3区管理,b.b2/1024/1024表空间大小M,(b.b2-a.a2)/1024/1024已使用M,substr((b.b2-a.a2)/b.b2*100,1,5)利用率from(selecttablespace_namea1,sum(nvl(bytes,0))a2fromdba_fr
7、ee_spacegroupbytablespace_name)a,(selecttablespace_nameb1,sum(bytes)b2fromdba_data_filesgroupbytablespace_name)b,(selecttablespace_namec1,contentsc2,extent_managementc3fromdba_tablespaces)cwherea.a1=b.b1andc.c1=b.b1;查询某表空间的大小selecta.a1表空间名称,c.c2类型,c.c3区管理,b.b2/1024/