DM7 表空間 使用者管理

2022-07-30 09:21:14 字數 4237 閱讀 6001

達夢資料庫預設有哪些表空間和作用?

v$tablespace dba_tablespaces; v$huge_tablespace dba_data_files;

sql> select tablespace_name,status from dba_tablespaces;
# 查詢所有表空間

sql> select name from v\$tablespace union select name from v\$huge_tablespace;

規劃表空間

# 案例1:

sql> create tablespace tbs1 datafile '/dm7/data/dameng/tbs1_01.dbf' size 31;

# 報錯 大小無效

sql> create tablespace tbs1 datafile '/dm7/data/dameng/tbs1_01.dbf' size 32;

初始檔案大小是頁的4096倍。 4096*8k =32m

# 案例2:建立乙個表空間,初始大小50m,最大100m

sql> create tablespace tbs2 datafile '/dm7/data/dameng/tbs2_01.dbf' size 50 autoextend on maxsize 100;

sql> select tablespace_name,status from dba_tablespaces;

# 案例3:建立乙個表空間,初始大小50m,

# 表空間由2個資料檔案組成,分別儲存在不同磁碟上,每次擴充套件1m,每個資料檔案最大100m.

sql> create tablespace tb3 datafile '/dm7/data/dameng/tbs3_01.dbf' size 50 auto

extend on next 1 maxsize 100,'/dm7/data/dameng/tbs3_02.dbf' size 50 autoextend on next 1 maxsize 100;

維護表空間

表空間不足,如何去維護表空間:

建立大表空間,資料匯出,匯入。

resize 資料檔案大小。

增加資料檔案。

sql> alter tablespace tbs1 add datafile '/dm7/data/dameng/tbs1_02.dbf' size 32;
更換儲存位置

達夢表空間的狀態:

注意:system,roll. temp不能offline;

# 1、表空間offine

sql> alter tablespace tb3 offline;

# 2、修改儲存位置

sql> alter tablespace tb3 rename datafile '/dm7/data/dameng/tbs3_02.dbf' to '/dm7/data/tbs3_02.dbf';

# 3、表空間online;

sql> alter tablespace tb3 online;

# 刪除表空間

sql> drop tablespace tbs2;

在dm資料庫中使用者管理主要涉及到三塊,使用者,許可權,角色。

角色:是將具有相同許可權的使用者組織在一起,這一組具有相同許可權的使用者稱為角色。角色是一組許可權的集合。乙個許可權可以賦予不同的角色。

資料庫預定義角色三個:dba,public,resouce

三權分立和四權分立。

資料庫安全員: syssso

所有賬號的預設口令都與使用者名稱一致大寫。

sql> select username from dba_users;

口令可以單獨使用,也可以組合使用,比如說需要策略1和2 則設定口令策略為3.

建立使用者語句 password policy 子句來指定口令策略。使用者密碼最長為48個位元組。

使用者檢視:sysuser , all_user, dba_user

案例1:建立使用者test,使用者可以建立自己的表,有屬於自己獨立的表空間,使用者密碼要求每60天變更一次。

sql> create tablespace test datafile '/dm7/data/dameng/test01.dbf' size 32;

sql> create user test identified by dameng123 limit password_life_time 60 default tablespace test;

sql> select * from all_users;

sql> select user;

sql> grant create table to test;

如何檢視使用者許可權

sql> select grantee,granted_role from dba_role_privs where grantee='test';

sql> select grantee,privliege from dba_sys_privs where grantee='public';

案例2:規劃乙個使用者,使用者每60天變更一次密碼,密碼嘗試連線2次失敗,賬號鎖定5分鐘,使用者能查詢dmhr.employee表。

sql> create user test1 identified by dameng123 limit password_life_time 60,failed_login_attemps 2,password_lock_time 5;

sql> select username,account_status,lock_date from dba_users;

sql> alter user test account unlock;

sql> grant select on dmhr.employee to test1;

sql> revoke select on dmhr.employee from test1;

sql> grant select(employee_name,hire_date) on dmhr.employee to test1;

sql> select employee_name,hire_date from dmhr.employee;

案例3:企業招聘一批錄入人員,許可權固定,只能錄入city表。

sql> create user test2 identified by dameng123;

sql> create role r1;

sql> grant insert on dmhr.city to r1;

sql> grant r1 to test2;

# try

sql> conn test2/dameng123

sql> insert into dmhr.city values('aa','bbbb',7);

# 沒有引用 [region] 許可權

sql> grant references any table to test2;

# try

sql> conn test2/dameng123

sql> insert into dmhr.city values('aa','bbbb',7);

# succeed

sql> commit;

# 收回許可權:revoke

sql> revoke r1 from test2;

# 修改使用者密碼:

sql> alter user test2 identified by 123456789;

# 鎖定使用者:

sql> alter user test2 account lock;

# 解鎖使用者:

sql> alter user test2 account unlock;

# 刪除使用者:

sql> drop user test2;

sql> drop user r1;

sql> drop user test1 cascade;---慎重,最好備份

DM7表空間管理方法

dm7表空間管理方法 1 表空間介紹 system 資料字典和全域性的系統資料。roll 存放了資料庫執行過程中產生的回滾記錄。undo retention 單位秒 temp 臨時表空間 main 資料庫預設的表空間,建立資料物件時,如果不指定儲存位置,預設存放在該錶空間。hmain huge 大表...

dm7審計設定

審計設定 審計開關由 dm 的 ini 引數 enable audit 控制 0 關閉審計 1 開啟普通審計 2 開啟普通審計和實時審計 檢視審計的值 select from v parameter where name enable audit 設定enable audit為1 sp set pa...

DM7統計資訊

一 什麼是統計資訊 統計資訊主要是描述資料庫中表 索引的大小 規模 資料分布狀況等的一類資訊。比如,表的行數 塊數 平均每行的大小 索引的leaf blocks 索引欄位的行數 不同值的大小等,都屬於統計資訊。cbo正是根據這些統計資訊資料,計算出不同訪問路徑 不同join 方式下,各種執行計畫的成...