达梦数据库创建只读用户
本文于 6 天前发布,最后更新于 5 天前

一、前言

通常,为了数据库的安全考虑,我们需要给不同的使用者开通不同的访问用户,而有时需要开通仅有读取数据权限的用户,也就是创建只读用户。那么在达梦中如何创建只读用户呢?

二、创建方法

方法一:直接创建

CREATE USER "READ" IDENTIFIED BY "XXXXXXXXX" READ ONLY;
GRANT SELECT ANY TABLE TO "READ";
GRANT SELECT ANY VIEW TO "READ";
GRANT SELECT ANY SEQUENCE TO "READ";
GRANT SELECT ANY DICTIONARY TO "READ";
GRANT SELECT ANY MATERIALIZED VIEW TO "READ";
GRANT "RESOURCE","PUBLIC","VTI","SOI" TO "READ"; 

注意:虽然RESOURCE和PUBLIC两个角色中有部分DDL权限,但因为创建的是只读用户,即便给了权限也不必担心。

方法二:批量SQL生成

--创建普通用户
CREATE USER "RDOLUSER" IDENTIFIED BY "XXXXXXXXX";
--生成批量赋权SQL
SELECT 'GRANT SELECT ON 模式名.'||TABLE_NAME||' TO RDOLUSER;' FROM SYS.DBA_TABLES WHERE OWNER = '模式名';
SELECT 'GRANT SELECT ON 模式名.'||VIEW_NAME||' TO RDOLUSER;' FROM SYS.DBA_VIEWS WHERE OWNER = '模式名';
SELECT 'GRANT SELECT ON 模式名.'||SEQUENCE_NAME||' TO RDOLUSER;' FROM SYS.DBA_SEQUENCES WHERE SEQUENCE_OWNER = '模式名';
SELECT 'GRANT SELECT ON 模式名.'||DIRECTORY_NAME||' TO RDOLUSER;' FROM SYS.DBA_DIRECTORIES WHERE OWNER = '模式名';

注意:MATERIALIZED VIEW物化视图一并归属在DBA_VIEWS中,所以只需要执行以上SQL执行后的结果集中的SQL即可。

三、总结

一般情况下,推荐使用方法一,操作简单便捷。

暂无评论

发送评论 编辑评论


|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇