Luo Hao

达梦——用户管理

rehoni / 2022-04-03


达梦数据库的用户管理

达梦数据库安装完成后,系统默认会自带有一些系统级的用户:

1、sys —–达梦数据库内置管理用户,不能登录数据库,数据库使用的大部分的数据字典和动态性能视图sys。

2、Sysdba —–数据库管理员用户

3、Sysauditor —-审计用户

4、Syssso —安全用户

5、Sysdbo —-数据操作员

在达梦数据库里每一个用户都有一个默认的表空间,对于 SYS、SYSSSO、SYSAUDITOR 系统用户,默认的用户表空间是 SYSTEM,SYSDBA 的默认表空间为 MAIN,新创建的用户如果没有指定默认表空间,则系统自动指定 MAIN 表空间为用户默认的表空间。

1、查看所有用户相关信息

select username,user_id,default_tablespace,profile from dba_users;

2、用户策略

名字:字母开头,a—z,0-9,$#_

位置:对应的表空间。

口令策略:

用户密码最长为48个字节,创建用户语句password policy子句来指定口令策略。(dm.ini pwd_policy)

系统支持的口令策略

0:无策略

1:禁止与用户名相同

2:口令长度不小于9

4:至少包含一个大写字母(A-Z)

8: 至少包含一个数字(0-9)

16:至少包含一个标点符号(英文状态输入,除”和空格除外)

口令可以单独使用,也可以组合使用,比如需要策略1和2,则设置口令策略为3

相关参数:

faild_login_attemps 密码尝试登录次数

password_lock_time 密码失败锁定时间

password_life_time 密码过期时间

相关视图:

sysusers, all_users , dba_users

3、创建用户

create user test1 identified by test123456 default tablespace tbs1;

创建用户设置密码注意:

DM7.6之前版本默认密码是转为大写存储的,登录时要注意。比如用户设置test1/test123456,那么登录的时候用test1/TEST123456和TEST1/TEST123456可以登录,用test1/test123456和TEST1/test123456就不能登录。如果设置密码时加引号,则存储实际的密码。

DM8版本后大小写默认通用,用户名密码默认统一都存储大写的,登录时用大小写都可以,都转为大写做匹配。如果设置密码时加引号,则存储实际的密码。

新建的用户未赋值权限只能查询通用的系统表,是没有创建表之类的权限。

如果没有赋值权限,那这个用户只能连接,还不能做任何事情

给用户赋管理员权限:grant dba to test1;
或者只给创建表等部分的权限:grant create table to test1;

查看用户相关权限:

Select grantee,granted_role from dba_role_privs where grantee=TESTUSER;
Select grantee,privilege from dba_sys_privs where grantee=PUBLIC;

4、修改用户密码

切换用户:conn test1/test123456
重置用户密码:alter user test1 identified by dameng123456;
修改默认表空间:alter user test1 default tablespace tbs2;

重置用户密码和修改默认表空间可一步进行

锁定用户:alter user test1 account lock;
解锁用户:alter user test1 account unlock;

5、删除用户

drop user test1;
drop user test1 cascade; ----慎用