oracle创建表空间

 

  
  
  
  
  1. SYS用户在CMD下以DBA身份登陆:  
  2.  
  3. 在CMD中打sqlplus /nolog  
  4.  
  5. 然后再  
  6.  
  7. conn / as sysdba  
  8.  
  9. //创建临时表空间    
  10.  
  11.    
  12.  
  13. create temporary tablespace user_temp    
  14.  
  15. tempfile 'D:\oracle\oradata\Oracle9i\user_temp.dbf'   
  16.  
  17. size 50m    
  18.  
  19. autoextend on    
  20.  
  21. next 50m maxsize 20480m    
  22.  
  23. extent management local;    
  24.  
  25.    
  26.  
  27. //创建数据表空间    
  28.  
  29. create tablespace test_data    
  30. logging    
  31.  
  32. datafile 'D:\oracle\oradata\Oracle9i\user_data.dbf'   
  33. size 50m    
  34.  
  35. autoextend on    
  36.  
  37. next 50m maxsize 20480m    
  38.  
  39. extent management local;    
  40.  
  41.    
  42.  
  43. //创建用户并指定表空间    
  44.  
  45. create user username identified by password    
  46.  
  47. default tablespace user_data    
  48. temporary tablespace user_temp;    
  49.  
  50.    
  51.  
  52. //给用户授予权限    
  53.  
  54.    
  55.  
  56. grant connect,resource to username;    
  57.  
  58.    
  59.  
  60. //以后以该用户登录,创建的任何数据库对象都属于user_temp 和user_data表空间,  
  61. 这就不用在每创建一个对象给其指定表空间了   
  62.  
  63. 撤权:    
  64.  
  65.        revoke   权限...   from  用户名;  
  66.  
  67. 删除用户命令  
  68.  
  69. drop user user_name cascade;  
  70.  
  71. 建立表空间  
  72.  
  73. CREATE TABLESPACE data01  
  74. DATAFILE '/oracle/oradata/db/DATA01.dbf' SIZE 500M  
  75. UNIFORM SIZE 128k; #指定区尺寸为128k,如不指定,区尺寸默认为64k  
  76.  
  77. 删除表空间  
  78.  
  79. DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;  
  80. 一、建立表空间  
  81.  
  82. CREATE TABLESPACE data01  
  83. DATAFILE '/oracle/oradata/db/DATA01.dbf' SIZE 500M  
  84. UNIFORM SIZE 128k; #指定区尺寸为128k,如不指定,区尺寸默认为64k  
  85.  
  86. 二、建立UNDO表空间  
  87.  
  88. CREATE UNDO TABLESPACE UNDOTBS02  
  89.  
  90. DATAFILE '/oracle/oradata/db/UNDOTBS02.dbf' SIZE 50M  
  91.  
  92. #注意:在OPEN状态下某些时刻只能用一个UNDO表空间,如果要用新建的表空间,必须切换到该表空间:  
  93.  
  94. ALTER SYSTEM SET undo_tablespace=UNDOTBS02;  
  95.  
  96. 三、建立临时表空间  
  97.  
  98. CREATE TEMPORARY TABLESPACE temp_data  
  99. TEMPFILE '/oracle/oradata/db/TEMP_DATA.dbf' SIZE 50M  
  100. 四、改变表空间状态  
  101.  
  102. 1.使表空间脱机  
  103.  
  104. ALTER TABLESPACE game OFFLINE;  
  105.  
  106. 如果是意外删除了数据文件,则必须带有RECOVER选项  
  107.  
  108. ALTER TABLESPACE game OFFLINE FOR RECOVER;  
  109.  
  110. 2.使表空间联机  
  111.  
  112. ALTER TABLESPACE game ONLINE;  
  113. 3.使数据文件脱机  
  114.  
  115. ALTER DATABASE DATAFILE 3 OFFLINE;  
  116.  
  117. 4.使数据文件联机  
  118.  
  119. ALTER DATABASE DATAFILE 3 ONLINE;  
  120. 5.使表空间只读  
  121.  
  122. ALTER TABLESPACE game READ ONLY;  
  123. 6.使表空间可读写  
  124.  
  125. ALTER TABLESPACE game READ WRITE;  
  126.  
  127. 五、删除表空间  
  128.  
  129. DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;  
  130. 六、扩展表空间  
  131.  
  132. 首先查看表空间的名字和所属文件  
  133.  
  134. select tablespace_name, file_id, file_name,  
  135.  
  136. round(bytes/(1024*1024),0) total_space  
  137.  
  138. from dba_data_files  
  139. order by tablespace_name;  
  140.  
  141. 1.增加数据文件  
  142.  
  143. ALTER TABLESPACE game  
  144.  
  145. ADD DATAFILE '/oracle/oradata/db/GAME02.dbf' SIZE 1000M;  
  146.  
  147. 2.手动增加数据文件尺寸  
  148.  
  149. ALTER DATABASE DATAFILE '/oracle/oradata/db/GAME.dbf' 
  150.  
  151. RESIZE 4000M;  
  152.  
  153. 3.设定数据文件自动扩展  
  154.  
  155. ALTER DATABASE DATAFILE '/oracle/oradata/db/GAME.dbf  
  156.  
  157. AUTOEXTEND ON NEXT 100M  
  158.  
  159. MAXSIZE 10000M;  
  160.  
  161. 设定后查看表空间信息  
  162.  
  163. SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES USED, C.BYTES FREE,  
  164.  
  165. (B.BYTES*100)/A.BYTES "% USED",(C.BYTES*100)/A.BYTES "% FREE" 
  166.  
  167. FROM SYS.SM$TS_AVAIL A,SYS.SM$TS_USED B,SYS.SM$TS_FREE C  
  168.  
  169. WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME AND A.TABLESPACE_NAME=C.TABLESPACE  

 

你可能感兴趣的:(oracle,职场,创建表空间,休闲)