达梦 disql / as sysdba登录

  • Post author:
  • Post category:其他



一、摘要


这是夜说的第七篇学习文章,配置达梦disql / as sysdba操作系统登录方式。


二、手册说明(具体查看官方手册:DM8安全管理)

基于 OS 的身份验证需要首先将操作系统用户加入到操作系统的
dmdba|dmsso|dmauditor 用户组,分别对应数据库的 SYSDBA|SYSSSO|SYSAUDITOR
用户。也可以将操作系统用户加入到操作系统的 dmusers 用户组来进行基于 OS 的身份验
证,对应数据库的同名用户,即此时数据库中需要存在一个与操作系统用户同名的用户。


三、SYSDBA用户配置操作系统登录

1.dm版本
SQL> select id_code;

行号     ID_CODE
---------- ---------------------------------
1          1-2-70-21.09.08-147080-10028-SEC


2.修改ENABLE_LOCAL_OSAUTH参数
SQL> SP_SET_PARA_VALUE(2,'ENABLE_LOCAL_OSAUTH',1);
DMSQL 过程已成功完成
已用时间: 808.649(毫秒). 执行号:501.
SQL> commit;
操作已执行
已用时间: 0.310(毫秒). 执行号:502.


3.重启数据库使参数生效
[root@yeshuo root]# systemctl restart DmServicedmdb.service


4.查看参数是否生效
SQL> select * from v$dm_ini where PARA_NAME='ENABLE_LOCAL_OSAUTH';

行号     PARA_NAME           PARA_VALUE MIN_VALUE MAX_VALUE DEFAULT_VALUE MPP_CHK SESS_VALUE FILE_VALUE DESCRIPTION                                                     PARA_TYPE
---------- ------------------- ---------- --------- --------- ------------- ------- ---------- ---------- --------------------------------------------------------------- ---------
1          ENABLE_LOCAL_OSAUTH 1          0         1         0             N       1          1          Whether to enable local authorization by operating system users READ ONLY

已用时间: 8.910(毫秒). 执行号:501.


5.配置操作系统组dmdba(我的环境已经存在dmdba,disql / as sydba登录未成功)
[dmdba@yeshuo ~]$ id dmdba
uid=2001(dmdba) gid=2002(dmdba) groups=2002(dmdba),2001(dinstall)

报错如下:
[dmdba@yeshuo ~]$ disql / as sysdba
[-2512]:未经授权的用户.
disql V8

此时需要重置下dmdba用户的用户组(内容不变,但是需要执行这一步)
[root@yeshuo root]# usermod -g dinstall -G dmdba,dinstall dmdba
[root@yeshuo root]# id dmdba
uid=2001(dmdba) gid=2002(dmdba) groups=2002(dmdba),2001(dinstall)

6.测试sysdba用户是否可以 / as sysdba登录
[dmdba@yeshuo ~]$ disql / as sysdba

服务器[LOCALHOST:5236]:处于普通打开状态
登录使用时间 : 1.849(ms)
disql V8
SQL> select user;

行号     USER()
---------- ------
1          SYSDBA

已用时间: 1.583(毫秒). 执行号:600.

可以查看数据
SQL> select count(*) from dba_objects;

行号     COUNT(*)
---------- --------------------
1          801

已用时间: 22.832(毫秒). 执行号:601