首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Oracle用戶核心概念體系:從Schema到資源管控

     編輯:Oracle 資料庫基礎

用戶即Schema

在Oracle中,用戶與Schema一一對應。創建用戶即創建Schema,用戶擁有的所有對象(表、視圖、索引、存儲過程等)均屬於其Schema。無獨立「創建Schema」命令。

五大核心屬性詳解

1. 默認表空間

  • 用戶創建對象時未指定TABLESPACE子句,對象自動存放於此。
  • 創建/修改語法:
CREATE USER app_user IDENTIFIED BY pass
  DEFAULT TABLESPACE users_data
  TEMPORARY TABLESPACE temp;

ALTER USER app_user DEFAULT TABLESPACE new_data;

2. 臨時表空間

  • 用於排序(ORDER BY、GROUP BY)、哈希連接、索引創建等中間操作。
  • 9i前可用戶級指定;9i+統一使用數據庫級DEFAULT TEMPORARY TABLESPACE(通常為TEMP)。

3. 用戶資源Profile

控制會話級資源消耗:

參數含義典型值
SESSIONS_PER_USER並發會話上限UNLIMITED / 50
CPU_PER_SESSION會話CPU時間(百分之一秒)UNLIMITED
CPU_PER_CALL單次調用CPU上限3000
CONNECT_TIME會話連接時長(分鐘)45
LOGICAL_READS_PER_SESSION會話邏輯讀塊數DEFAULT
LOGICAL_READS_PER_CALL單次調用邏輯讀上限1000
PRIVATE_SGA會話私有SGA內存15K
COMPOSITE_LIMIT綜合資源加權分值5000000
CREATE PROFILE app_profile LIMIT
  SESSIONS_PER_USER 20
  CPU_PER_CALL 5000
  CONNECT_TIME 60;
ALTER USER app_user PROFILE app_profile;

4. 表空間配額

  • 用戶在特定表空間可用的最大磁盤空間。
  • 超額報錯:ORA-01536: space quota exceeded for tablespace ...
  • 查詢配額:SELECT * FROM dba_ts_quotas WHERE username = 'APP_USER';
-- 授予無限配額
ALTER USER app_user QUOTA UNLIMITED ON users_data;
-- 或指定大小
ALTER USER app_user QUOTA 100M ON users_idx;

5. 密碼與認證屬性

  • 密碼複雜度/過期/鎖定由PROFILE密碼參數控制(見ID:94323)。
  • 外部認證:CREATE USER ext_user IDENTIFIED EXTERNALLY;(OS/SSL/Kerberos)
  • 全局認證:CREATE USER global_user IDENTIFIED GLOBALLY AS 'CN=...';(Enterprise Directory)

完整創建用戶範本

CREATE USER dw_user IDENTIFIED BY "Str0ngP@ssw0rd!"
  DEFAULT TABLESPACE dw_data
  TEMPORARY TABLESPACE temp
  QUOTA UNLIMITED ON dw_data
  QUOTA 500M ON dw_idx
  PROFILE dw_profile
  ACCOUNT UNLOCK
  PASSWORD EXPIRE;  -- 首次登錄強制改密

審計與合規檢查點

  1. 核心用戶(SYS/SYSTEM/應用擁有者)是否綁定嚴格Profile
  2. 是否存在DEFAULT TABLESPACE = SYSTEM的業務用戶(嚴禁)
  3. 臨時表空間是否統一為TEMP,避免碎片化
  4. 配額是否精確到業務表空間,防止誤寫入SYSTEM/UNDO
  5. 定期查詢DBA_USERS對比基線,發現EXPIRED(GRACE)、LOCKED異常狀態即時處理
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved