從創建用戶、表空間綁定、角色授權、密碼管理、帳號解鎖,到三級權限視圖查詢、初始口令對照、表空間/建表示例,構建 Oracle 用戶管理完整工具箱。
CREATE USER "TESTER" PROFILE "DEFAULT" IDENTIFIED BY "TESTER"
DEFAULT TABLESPACE "TESTDATA"
TEMPORARY TABLESPACE "TESTTEMP"
ACCOUNT UNLOCK;
GRANT "CONNECT" TO "TESTER";
GRANT "RESOURCE" TO "TESTER";
GRANT "DBA" TO "TESTER"; -- 僅開發/測試
GRANT "EXP_FULL_DATABASE" TO "TESTER";
GRANT "IMP_FULL_DATABASE" TO "TESTER";
ALTER USER "SCOTT" IDENTIFIED BY "newpass";
ALTER USER "SCOTT" ACCOUNT UNLOCK;
| 查詢目標 | USER_*(當前) | ALL_*(可訪問) | DBA_*(全庫) |
|---|---|---|---|
| 用戶列表 | user_users | all_users | dba_users |
| 系統權限 | user_sys_privs | all_sys_privs | dba_sys_privs |
| 對象權限 | user_tab_privs | all_tab_privs | dba_tab_privs |
| 角色列表 | user_role_privs | - | dba_roles / dba_role_privs |
-- 1. 創建表空間
CREATE TABLESPACE test1 DATAFILE 'D:\table\test1.dbf' SIZE 1M;
-- 2. 創建用戶綁定表空間
CREATE USER wjq IDENTIFIED BY password DEFAULT TABLESPACE test1;
-- 3. 連接並建表
CONN wjq/password
CREATE TABLE t1 (
empno NUMBER(5) PRIMARY KEY,
ename VARCHAR2(15) NOT NULL,
job VARCHAR2(10),
hiredate DATE DEFAULT SYSDATE,
sal NUMBER(7,2)
);
-- 4. 指定表空間建表
CREATE TABLE t2 (...) TABLESPACE test1;
-- 5. 插入數據
INSERT INTO t1 VALUES (101,'wang','it',25,DEFAULT,20,20);
INSERT INTO t1 VALUES (102,'wang','it',25,TO_DATE('1980-12-17','YYYY-MM-DD'),20,20);
CONNECT INTERNAL/oracle → STARTUP/SHUTDOWNinit.ora (靜態 PFILE)或 SPFILE(動態)INTERNAL/ORACLE、SYS/CHANGE_ON_INSTALL、SYSTEM/MANAGER、SCOTT/TIGER、SYSMAN/OEM_TEMPStorage Manager 圖形化工具將上述腳本模組化、參數化,接入 CMDB 自動化發佈,實現用戶全生命周期標準化交付。