DB2賦權舉例

2021-09-26 08:12:49 字數 1746 閱讀 6781

來了乙個需求,比較簡單,需要在db2資料庫上建立乙個使用者給開發人員,只授予database相關操作許可權,instance許可權不給,其他資料庫操作許可權不給。常用操作主要為建立各種資料庫物件,比如表,檢視等。

上網google一下,發現db2資料庫裡根本就沒有使用者這個概念,只有模式。那db2怎麼進行許可權分離和最小化管理?再深入地查資料時,發現db2自己在資料庫體系結構內不使用使用者的概念,但是它還是變相引用,它使用的是作業系統層面建立的使用者,在資料庫場面對建立模式,然後對作業系統使用者、模式、database進行繫結即可。與oracle不一樣的是,db2這裡模式名字和使用者名字可以不一樣。

小結一下:  乙個instance下可以有多個database,乙個database下可以有多個schema,1個schema可以被多個user使用。 

操作步驟如下:

1、作業系統下建立使用者

2、db2資料庫下建立模式(也可以不建立。不建立的情況下,db2會使用你連線的使用者名稱作為預設的模式名字)

3、賦權給使用者

--授權使用者訪問資料庫許可權

grant bindadd on database to user dstuser;

grant connect on database to user dstuser;

grant load on database to user dstuser;

--授予使用者訪問表空間的許可權 

grant use of tablespace gd_main_tbs to user dstuser;

grant use of tablespace gd_idx_tbs to user dstuser;

--授予使用者操作模式的許可權

grant alterin on schema dstuser to user dstuser;

grant createin on schema dstuser to user dstuser;

grant dropin on schema dstuser to user dstuser;

--授予使用者讀取表許可權(ecgd.cl_commodity應該是需要授權查詢的表)

grant select on table ecgd.cl_commodity to user dstuser; 

passwd dstuser

db2connect to dstdb 

create schema dstuser

grant dbadm on database to user dstuser;

grant alterin on schema dstuser to user dstuser;

grant createin on schema dstuser to user dstuser;

grant dropin on schema dstuser to user dstuser;

測試:connect to dstdb  user dstuser

create table test(id char(10))

insert into test values('1')

insert into test values('2')

delete from test where id=1

select * from test

drop table test

檢視當前schema命令: db2 "values( current schema)"

設定當前schema命令: set current schema [shemaname]

DB2管理非預設 db2 例項

檢視db2所有例項 c documents and settings administrator db2ilist db2c documents and settings administrator db2 get instance 當前資料庫管理器例項是 db2 建立新例項 c documents...

關於DB2的使用(DB2資料命令)

公司所用的資料庫有金倉和db2 首先要用命令視窗直接開啟db2需要在cmd中輸入 db2cmd 1 啟動db2資料庫 db2start 2 連線資料庫 db2 connect to 資料庫名稱 3 建立資料庫 db2 create db 資料庫名稱 4 刪除資料庫 db2 drop db 資料庫名稱...

DB2中db2命令引數說明

db2中db2命令引數說明 a 顯示 sqlca off c 自動落實 on d 檢索並顯示 xml 宣告 off e 顯示 sqlcode sqlstate off f 讀取輸入檔案 off i 顯示 xml 資料並帶有縮排 off l 將命令記錄到歷史記錄檔案中 off m 顯示受影響的行數 o...