为数据库创建一个只读用户

#root用户执行
groupadd $groupname
useradd -g $groupname -s /bin/bash -d /home/$username   -m $username
#上述步骤中的groupname也可以使用gbasedbt的组或其他组都行
passwd $username

#gbasedbt用户执行
dbaccess $dbname -
grant connect to $username;                 //给用户赋予connect角色权限
revoke update on tab1 from public;       //回收public角色的update权限
revoke delete on tab1 from public;        //回收public角色的delete权限
revoke insert  on tab1 from public;        //回收public角色的insert权限

注意:

1、如果要创建一个只读用户需要回收public角色的delete|insert|update权限

2、需要针对每张表都回收权限,这是做一个很麻烦的事情。表名可以通过

     select tabname from systables where tabid>99 and tabtype='T';来获取

3、revoke ... from public;的操作过程需要使用表的属主来操作才能生效

    如果表的属主是gbasedbt就用gbasedbt用户连接数据库来操作;

    如果表的属主是user1就需要使用user1用户连接数据库来执行回收操作;

Guess you like

Origin blog.csdn.net/David_ifx/article/details/121287169