达梦数据库用户管理

  1. 用户创建与密码管理
  2. 用户只读属性
  3. 用户资源限制

用户创建与密码管理

  1. 用户创建
  2. 权限分配
  3. 表空间创建
  4. 默认表空间修改
  5. 密码策略与密码修改
  6. 删除用户
  • 查看密码的最小长度
##密码策略不等于2,不等于0时生效
select * from v$parameter where name = 'PWD_MIN_LEN';
alter system set 'PWD_MIN_LEN' = 10 both;
  • 查看用户的密码策略
select * from v$parameter where name='PWD_POLICY';
  1. 0 无策略
  2. 1 禁止与用户名相同
  3. 2 口令长度不小于9
  4. 4 至少包含一个大写字母(A-Z)
  5. 8 至少包含一个数字(0-9)
  6. 16 至少包含一个标点符号(英文输入法状态下,除“和空格外的所有符号)
  • 修改用户密码策略为无限制,可根据项目需要修改,31为最高策略
alter system set 'PWD_POLICY' =0 both;
  • 创建一个DBA用户
create user dmdba identified by dmdba;
  • 创建一个普通用户
create user pdm identified by pdm;
  • 用户角色分配与回收
grant dba,resource,public,soi,vti to dmdba;
grant resource,public,soi,vti to pdm;
grant dba to pdm;
revoke dba from pdm;
select * from dba_role_privs where grantee='PDM';
  • 创建表空间,指定用户的默认表空间
select * from v$tablespace;
select path from v$datafile;
create tablespace dmdba datafile '/dmdata/dmdb/dmdba01.dbf' size 128 autoextend on next 128 maxsize 1024;
alter tablespace dmdba add datafile '/dmdata/dmdb/dmdba02.dbf' size 128 autoextend on next 128 maxsize 1024;
create tablespace pdm datafile '/dmdata/dmdb/pdm01.dbf' size 128 autoextend on next 128 maxsize 1024;
alter tablespace pdm add datafile '/dmdata/dmdb/pdm02.dbf' size 128 autoextend on next 128 maxsize 1024;
alter user dmdba default tablespace dmdba;
alter user pdm default tablespace pdm;
  • 新建的密码策略对新建用户生效,旧的用户可以通过alter修改密码策略
select username,password_versions from dba_users;
alter user BENCHMARKSQL password_policy 0;
  • 修改用户密码,要满足密码策略
alter user pdm identified by pdm;
alter user pdm identified by "Degu_1atd";
##在disql里时,不需要再用单引号转义
SQL> connect pdm/"Degu_1atd"
[dmdba@dmdb04 ~]$ disql pdm/'"Degu_1atd"'
  • 删除用户
DROP USER [IF EXISTS] <用户名> [RESTRICT | CASCADE];
drop user abc cascade;--[-2101]:无效的用户名[ABC]
drop user if exists abc cascade;--成功
drop user dmdba;-- [-2639]:试图删除被依赖对象[DMDBA]
drop user if exists dmdba cascade;--成功

用户只读属性

  • 空间使用权限
grant unlimited tablespace to pdm;
grant unlimited tablespace to dmdba;
##编辑有限制
alter user pdm read only;
select username,editions_enabled from dba_users;
alter user pdm diskspace limit 1024;
alter user pdm diskspace unlimited;

用户资源限制

select * from dba_users;
select * from sysusers;
select b.username 账号,b.password_versions 密码策略,a.sess_per_user 同时拥有的会话数,a.conn_idle_time 会话访问服务器的时间上限, a.failed_attemps 登陆错误次数,b.lock_date 锁定时间,a.failed_num 允许失败次数,a.lock_time 锁定时长,a.life_time 有效期,a.grace_time 宽限天数 from sysusers a,dba_users b where a.id=b.user_id; 
--修改密码周期,宽限天数
alter user pdm limit password_life_time 90, password_grace_time 30;
--达错误次数锁定时间(分钟)
alter user pdm limit password_lock_time 2;
--允许错误次数,超出则锁定账号
alter user pdm limit failed_login_attemps 1;--[-2508]:Too many login fail times.
--一个账号在同一个实例中允许连接的会话数
alter user pdm limit SESSION_PER_USER 2 ;--[-6002]:Exceed user maximum session limitation.
--会话连接时间
alter user pdm limit CONNECT_TIME 1;
alter user pdm limit CONNECT_IDLE_TIME 1;
--解除限制
alter user pdm limit  failed_login_attemps unlimited, password_life_time unlimited, password_reuse_time unlimited, password_reuse_max unlimited, password_lock_time unlimited, password_grace_time unlimited;
alter user pdm limit CONNECT_IDLE_TIME unlimited;
alter user pdm limit SESSION_PER_USER unlimited ;

版权声明:本文为tianshanzh47420原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。