国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Oracle > 正文

安裝Oracle后使用的修改表空間的SQL代碼

2024-08-29 13:42:08
字體:
來源:轉載
供稿:網友
配置:
  Windows NT 4.0 中文版
  5塊10.2GB SCSI硬盤
  分:C:盤、D:盤、E:盤、F:盤、G:盤
  Oracle 8.0.4 for Windows NT
  NT安裝在C:/WINNT,Oracle安裝在C:/ORANT
  
  目標:
  因系統的回滾段太小,現打算生成新的回滾段,
  建立大的、新的表空間(數據表空間、索引表空間、回滾表空間、臨時表空間、)
  建兩個數據表空間、兩個索引表空間,這樣建的目的是根據實際應用,
  如:現有10個應用用戶,每個用戶是一個獨立子系統(如:商業進銷存MIS系統中的財務、收款、庫存、人事、總經理等)
  尤其大型商場中收款機眾多,同時訪問進程很多,經常達到50-100個進程同時訪問,
  這樣,通過建立多個用戶表空間、索引表空間,把各個用戶分別建在不同的表空間里(多個用戶表空間放在不同的物理磁盤上),
  減少了用戶之間的I/O競爭、讀寫數據與寫讀索引的競爭(用戶表空間、索引表空間也分別放在不同的物理磁盤上)
  
  規劃:
  C:盤、NT系統,Oracle系統
  D:盤、數據表空間1(3GB、自動擴展)、回滾表空間1(1GB、自動擴展)
  E:盤、數據表空間2(3GB、自動擴展)、回滾表空間2(1GB、自動擴展)
  F:盤、索引表空間1(2GB、自動擴展)、臨時表空間1(0.5GB、不自動擴展)
  G:盤、索引表空間2(2GB、自動擴展)、臨時表空間2(0.5GB、不自動擴展)
  
  注:這只是一個簡單的規劃,實際規劃要依系統需求來定,盡量減少I/O競爭
  
  實現:
  1、首先查看系統有哪些回滾段及其狀態。
  
  SQL> col owner format a20
  SQL> col status format a10
  SQL> col segment_name format a20
  SQL> col tablespace_name format a20
  
  SQL> SELECT OWNER,SEGMENT_NAME,TABLESPACE_NAME,SUM(BYTES)/1024/1024 M
   2 FROM DBA_SEGMENTS
   3 WHERE SEGMENT_TYPE='ROLLBACK'
   4 GROUP BY OWNER,SEGMENT_NAME,TABLESPACE_NAME
   5 /
  
  OWNER        SEGMENT_NAME     TABLESPACE_NAME       M
  -------------------- -------------------- -------------------- ---------
  SYS         RB1         ROLLBACK_DATA    .09765625
  SYS         RB10         ROLLBACK_DATA    .09765625
  SYS         RB11         ROLLBACK_DATA    .09765625
  SYS         RB12         ROLLBACK_DATA    .09765625
  SYS         RB13         ROLLBACK_DATA    .09765625
  SYS         RB14         ROLLBACK_DATA    .09765625
  SYS         RB15         ROLLBACK_DATA    .09765625
  SYS         RB16         ROLLBACK_DATA    .09765625
  SYS         RB2         ROLLBACK_DATA    .09765625
  SYS         RB3         ROLLBACK_DATA    .09765625
  SYS         RB4         ROLLBACK_DATA    .09765625
  SYS         RB5         ROLLBACK_DATA    .09765625
  SYS         RB6         ROLLBACK_DATA    .09765625
  SYS         RB7         ROLLBACK_DATA    .09765625
  SYS         RB8         ROLLBACK_DATA    .09765625
  SYS         RB9         ROLLBACK_DATA    .09765625
  SYS         RB_TEMP       SYSTEM        .24414063
  SYS         SYSTEM        SYSTEM        .1953125
  
  查詢到18記錄.
  
  SQL> SELECT SEGMENT_NAME,OWNER,
   2     TABLESPACE_NAME,SEGMENT_ID,FILE_ID,STATUS
   3     FROM DBA_ROLLBACK_SEGS
   4 /
  
  SEGMENT_NAME     OWNER        TABLESPACE_NAME   SEGMENT_ID  FILE_ID STATUS
  -------------------- -------------------- -------------------- ---------- --------- ----------
  SYSTEM        SYS         SYSTEM            0     1 ONLINE
  RB_TEMP       SYS         SYSTEM            1     1 OFFLINE
  RB1         PUBLIC        ROLLBACK_DATA         2     3 ONLINE
  RB2         PUBLIC        ROLLBACK_DATA         3     3 ONLINE
  RB3         PUBLIC        ROLLBACK_DATA         4     3 ONLINE
  RB4         PUBLIC        ROLLBACK_DATA         5     3 ONLINE
  RB5         PUBLIC        ROLLBACK_DATA         6     3 ONLINE
  RB6         PUBLIC        ROLLBACK_DATA         7     3 OFFLINE
  RB7         PUBLIC        ROLLBACK_DATA         8     3 OFFLINE
  RB8         PUBLIC        ROLLBACK_DATA         9     3 OFFLINE
  RB9         PUBLIC        ROLLBACK_DATA        10     3 OFFLINE
  RB10         PUBLIC        ROLLBACK_DATA        11     3 OFFLINE
  RB11         PUBLIC        ROLLBACK_DATA        12     3 OFFLINE
  RB12         PUBLIC        ROLLBACK_DATA        13     3 OFFLINE
  RB13         PUBLIC        ROLLBACK_DATA        14     3 OFFLINE
  RB14         PUBLIC        ROLLBACK_DATA        15     3 OFFLINE
  RB15         PUBLIC        ROLLBACK_DATA        16     3 OFFLINE
  RB16         PUBLIC        ROLLBACK_DATA        17     3 OFFLINE
  
  查詢到18記錄.
  
  2、修改代碼如下,可把以下代碼存入一.sql文件,如cg_sys.sql,然后以SQL> @cg_sys.sql調用執行。
  
  --注重:各個硬盤上要事先建好oradata目錄
  
  --修改現有回滾段,使之失效,下線
  alter rollback segment rb1 offline;
  alter rollback segment rb2 offline;
  alter rollback segment rb3 offline;
  alter rollback segment rb4 offline;
  alter rollback segment rb5 offline;
  alter rollback segment rb6 offline;
  alter rollback segment rb7 offline;
  alter rollback segment rb8 offline;
  alter rollback segment rb9 offline;
  alter rollback segment rb10 offline;
  alter rollback segment rb11 offline;
  alter rollback segment rb12 offline;
  alter rollback segment rb13 offline;
  alter rollback segment rb14 offline;
  alter rollback segment rb15 offline;
  alter rollback segment rb16 offline;
  
  --刪除原有回滾段
  drop rollback segment rb1;
  drop rollback segment rb2;
  drop rollback segment rb3;
  drop rollback segment rb4;
  drop rollback segment rb5;
  drop rollback segment rb6;
  drop rollback segment rb7;
  drop rollback segment rb8;
  drop rollback segment rb9;
  drop rollback segment rb10;
  drop rollback segment rb11;
  drop rollback segment rb12;
  drop rollback segment rb13;
  drop rollback segment rb14;
  drop rollback segment rb15;
  drop rollback segment rb16;
  
  --建數據表空間1
  --收款、庫存、訂貨、遠程通信
  create tablespace USER_DATA1 datafile
  'd:/oradata/user1_1.ora' size 512M,
  'd:/oradata/user1_2.ora' size 512M,
  'd:/oradata/user1_3.ora' size 512M,
  'd:/oradata/user1_4.ora' size 512M,
  'd:/oradata/user1_5.ora' size 512M,
  'd:/oradata/user1_6.ora' size 512M
  AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED
  default storage (initial 128K next 2M pctincrease 0);
  --initial 128K,因為,用戶建在表空間上,而表建在用戶里,為用戶所擁有,
  --用戶繼續數據表空間的存儲參數,表繼續用戶的存儲參數
  --假如initial設的過大,如:5M,則每建一個空表就要占用5M的空間,即使一條記錄也沒有
  --AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED,設置數據文件自動擴展,每一次擴展增加5M,最大空間不受限
  
  --建數據表空間2
  --物價、人事、結算、財務、總經理、合同、統計
  create tablespace USER_DATA2 datafile
  'e:/oradata/user2_1.ora' size 512M,
  'e:/oradata/user2_2.ora' size 512M,
  'e:/oradata/user2_3.ora' size 512M,
  'e:/oradata/user2_4.ora' size 512M,
  'e:/oradata/user2_5.ora' size 512M,
  'e:/oradata/user2_6.ora' size 512M
  AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED
  default storage (initial 128K next 2M pctincrease 0);
  
  --建索引表空間1
  create tablespace INDEX_DATA1 datafile
  'f:/oradata/index1_1.ora' size 512M,
  'f:/oradata/index1_2.ora' size 512M,
  'f:/oradata/index1_3.ora' size 512M,
  'f:/oradata/index1_4.ora' size 512M
  AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED
  default storage (initial 128K next 2M pctincrease 0);
  
  --建索引表空間2
  create tablespace INDEX_DATA2 datafile
  'g:/oradata/index2_1.ora' size 512M,
  'g:/oradata/index2_2.ora' size 512M,
  'g:/oradata/index2_3.ora' size 512M,
  'g:/oradata/index2_4.ora' size 512M
  AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED
  default storage (initial 128K next 2M pctincrease 0);
  
  --建回滾表空間1
  --設置初始值40M(initial 40M),則每在這個表空間中建一個回滾段,
  --此回滾段自動繼續此回滾表空間的存儲參數,也即默認文件為40M
  create tablespace ROLLBACK_DATA1 datafile
  'd:/oradata/roll1_1.ora' size 512M,
  'd:/oradata/roll1_2.ora' size 512M
  AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED
  default storage (initial 40M next 5M pctincrease 0);
  
  --建回滾表空間2
  create tablespace ROLLBACK_DATA2 datafile
  'e:/oradata/roll2_1.ora' size 512M,
  'e:/oradata/roll2_2.ora' size 512M
  AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED
  default storage (initial 40M next 5M pctincrease 0);
  
  --建臨時表空間1
  create tablespace TEMPORARY_DATA1 datafile
  'f:/oradata/temp1_1.ora' size 512M
  default storage (initial 10M next 3M pctincrease 0);
  
  --建臨時表空間2
  create tablespace TEMPORARY_DATA2 datafile
  'g:/oradata/temp2_1.ora' size 512M
  default storage (initial 10M next 3M pctincrease 0);
  
  --使其真正成為臨時的
  alter tablespace TEMPORARY_DATA1 temporary;
  alter tablespace TEMPORARY_DATA2 temporary;
  
  --建立新的回滾段,每個都一樣大,不同大小的回滾段沒有什么意義,系統是隨機選擇的。
  --建多少個,根據并發訪問用戶的多少,
  --假如你們公司天天有50-100個人員使用Oracle系統開發的治理軟件,應該20個以上
  
  create public rollback segment rb01 tablespace rollback_data1;
  create public rollback segment rb02 tablespace rollback_data1;
  create public rollback segment rb03 tablespace rollback_data1;
  create public rollback segment rb04 tablespace rollback_data1;
  create public rollback segment rb05 tablespace rollback_data1;
  create public rollback segment rb06 tablespace rollback_data1;
  create public rollback segment rb07 tablespace rollback_data1;
  create public rollback segment rb08 tablespace rollback_data1;
  create public rollback segment rb09 tablespace rollback_data2;
  create public rollback segment rb10 tablespace rollback_data2;
  --前8個建在回滾表空間1中,后8個在回滾表空間2
  create public rollback segment rb11 tablespace rollback_data2;
  create public rollback segment rb12 tablespace rollback_data2;
  create public rollback segment rb13 tablespace rollback_data2;
  create public rollback segment rb14 tablespace rollback_data2;
  create public rollback segment rb15 tablespace rollback_data2;
  create public rollback segment rb16 tablespace rollback_data2;
  create public rollback segment rb17 tablespace rollback_data2;
  create public rollback segment rb18 tablespace rollback_data2;
  create public rollback segment rb19 tablespace rollback_data2;
  create public rollback segment rb20 tablespace rollback_data2;
  
  --使回滾段online,即有效
  alter rollback segment rb01 online;
  alter rollback segment rb02 online;
  alter rollback segment rb03 online;
  alter rollback segment rb04 online;
  alter rollback segment rb05 online;
  alter rollback segment rb06 online;
  alter rollback segment rb07 online;
  alter rollback segment rb08 online;
  alter rollback segment rb09 online;
  alter rollback segment rb10 online;
  alter rollback segment rb11 online;
  alter rollback segment rb12 online;
  alter rollback segment rb13 online;
  alter rollback segment rb14 online;
  alter rollback segment rb15 online;
  alter rollback segment rb16 online;
  alter rollback segment rb17 online;
  alter rollback segment rb18 online;
  alter rollback segment rb19 online;
  alter rollback segment rb20 online;
  
  --查看現有回滾段及其狀態
  col segment format a30
  SELECT SEGMENT_NAME,OWNER,TABLESPACE_NAME,SEGMENT_ID,FILE_ID,STATUS FROM DBA_ROLLBACK_SEGS;
  
  --查看數據文件及其所在表空間、大小、狀態
  col file_name format a40
  col tablespace_name format a20
  select file_name,file_id,tablespace_name,bytes,status from dba_data_files;
  
  至此,表空間重新規劃完畢,這里講的比較通俗,還有好多參數值得設置,能夠把Oracle設置到最優的境界,
  表空間設置完了,下面,就該好好的整理一下Oracle的內存區了,
  Oracle很有意思,內存越大,效果越明顯,所以有必要好好調整一下SGA區,也就是主要配置ininorcl.ora參數文件。  


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 萍乡市| 盐山县| 海盐县| 清水县| 墨玉县| 嵊州市| 南投县| 廊坊市| 仲巴县| 蓝田县| 宜川县| 积石山| 浦东新区| 原阳县| 社旗县| 祁门县| 马公市| 廊坊市| 浠水县| 海兴县| 临海市| 榕江县| 固阳县| 霸州市| 黑河市| 江西省| 台江县| 徐水县| 朔州市| 石楼县| 南开区| 奎屯市| 富平县| 仁化县| 商丘市| 博湖县| 峡江县| 内江市| 达孜县| 贡觉县| 太保市|