ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

达梦数据库DM7用户管理

2021-10-19 15:35:12  阅读:327  来源: 互联网

标签:QHKTEST 数据库 DM7 用户 默认 TIME PASSWORD 达梦


一、背景

用户是登录数据库的账户,一般情况下,默认一个账户对应一个用户,安装完DM数据库后,系统默认自带一些系统级的用户,主要有四个:
1、SYS -----达梦数据库内置管理用户,不能登录数据库,数据库使用的大部分的数据字典和动态性能视图SYS;
2、SYSDBA-----数据库的管理员;
3、SYSAUDITOR---审计用户;
4、SYSSSO---安全用户在DM数据库中;

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

其次与用户相关的概念有:
模式:一个用户默认对应一个同名的模式,但一个用户也可以创建多个模式;
权限:即一个用户,拥有访问数据库哪些资源的哪些权利;
角色:类似于用户组,创建角色时一般会指定角色权限,将角色赋给一个用户,这个用户就拥有了这个角色中的所有权限,DM数据库预定义角色有三个: DBA、PUBLIC、RESOURCE。

关于用户相关的模式、权限、角色在此未展开描述,后续会在其他文章展开。

二、用户相关操作

1、创建用户

语法格式:
CREATE USER <用户名> IDENTIFIED <身份验证模式> [PASSWORD_POLICY <口令策略>][<
锁定子句>][<存储加密密钥>][<空间限制子句>][<只读标志>][<资源限制子句>][<允许 IP 子句>][<
禁止 IP 子句>][<允许时间子句>][<禁止时间子句>][<TABLESPACE 子句>][<INDEX_TABLESPACE 子 句>];<身份验证模式> ::= <数据库身份验证模式>|<外部身份验证模式> <数据库身份验证模式> ::= BY <口令> <外部身份验证模式> ::= EXTERNALLY | EXTERNALLY AS <用户 DN>
<口令策略> ::= 口令策略项的任意组合
<锁定子句> ::= ACCOUNT LOCK | ACCOUNT UNLOCK
<存储加密密钥> ::= ENCRYPT BY <口令> <空间限制子句> ::= DISKSPACE LIMIT <空间大小>| DISKSPACE UNLIMITED
<只读标志> ::= READ ONLY | NOT READ ONLY
<资源限制子句> ::= LIMIT <资源设置项>{,<资源设置项>}
<资源设置项> ::= SESSION_PER_USER <参数设置>|
                            CONNECT_IDLE_TIME <参数设置>|
                            CONNECT_TIME <参数设置>|
                            CPU_PER_CALL <参数设置>|
                            CPU_PER_SESSION <参数设置>|
                            MEM_SPACE <参数设置>|
                            READ_PER_CALL <参数设置>|
                            READ_PER_SESSION <参数设置>|
                            FAILED_LOGIN_ATTEMPS <参数设置>|
                            PASSWORD_LIFE_TIME <参数设置>| 
                            PASSWORD_REUSE_TIME <参数设置>|
                            PASSWORD_REUSE_MAX <参数设置>| 
                            PASSWORD_LOCK_TIME <参数设置>| 
                            PASSWORD_GRACE_TIME <参数设置>
<参数设置> ::=<参数值>| UNLIMITED
<允许 IP 子句> ::= ALLOW_IP <IP 项>{,<IP 项>}
<禁止 IP 子句> ::= NOT_ALLOW_IP <IP 项>{,<IP 项>}
<IP 项> ::= <具体 IP>|<网段> <允许时间子句> ::= ALLOW_DATETIME <时间项>{,<时间项>}
<禁止时间子句> ::= NOT_ALLOW_DATETIME <时间项>{,<时间项>}
<时间项> ::= <具体时间段> | <规则时间段> <具体时间段> ::= <具体日期> <具体时间> TO <具体日期> <具体时间> <规则时间段> ::= <规则时间标志> <具体时间> TO <规则时间标志> <具体时间> 
<规则时间标志> ::= MON | TUE | WED | THURS | FRI | SAT | SUN
<TABLESPACE 子句> ::=DEFAULT TABLESPACE <表空间名>
<INDEX_TABLESPACE 子句> ::= DEFAULT INDEX TABLESPACE <表空间名>

在我们实际使用中,我们最主要需要注意的是,创建用户指定的用户名、密码、资源限制、模式、表空间以及权限;

下面我们进行创建测试:

CREATE USER QHKTEST 
  IDENTIFIED BY qhkKKK123
  DISKSPACE LIMIT 2
  LIMIT
    CONNECT_IDLE_TIME 1,
    PASSWORD_GRACE_TIME 3;

 首先我们创建一个QHKTEST用户,密码为qhkKKK123,磁盘使用空间2M,其次会话连接闲置时间为1分钟,密码过期时间3天;
然后我们用QHKTEST登录数据库,看设置是否生效,特别是一分钟闲置会话时间的设置

从上面我们可以看到,用户登录数据库成功,但是等了3分钟过后,执行SQL的时候,就报错“网络连接异常”,即我们设置的用户策略全都是生效的;

2、用户赋权

语法格式:
GRANT [PRIV_NAME] ON [SCHEMA_NAME].[TABLE_NAME] TO [USER_NAME];

测试只给QHKTEST一个表的SELECT 权限,其余表无权限
GRANT SELECT ON SYSDBA.TEST1 TO QHKTEST;

赋权成功后查询测试:

一般情况下,我们需要赋权的主要是增删查改,其次就是创建视图,触发器等,具体权限设置,根据需求确定。

3、修改用户:

首先我们查看系统中所有的用户信息:

select * from dba_users;

 从上面可以看到,QHKTEST的默认表空间和SYSDBA用户一样,也是MAIN,而创建QHKTEST的时候未指定表空间,现在我们修改默认表空间:

CREATE TABLESPACE QHKTEST DATAFILE 'F:\DM7\DATA\DAMENG\QHKTEST.DBF' SIZE 128;
ALTER USER QHKTEST IDENTIFIED BY qhkKKK123 DEFAULT TABLESPACE QHKTEST;
SELECT * FROM DBA_USERS;

日常运维过程中,我们经常会用到alter命令以实现用户信息的修改,其他常用的包括:修改密码alter...identified by...、锁定解锁用户alter ...acount lock/unlock等,在此不做展开。

4、 查询用户信息:

查询所有用户信息(如上面截图):
select * from dba_users;

查询所有用户对应的角色:
select * from dba_role_privs;

查询当前用户:
select * from user_users;

5、删除用户:

DELETE USER QHKTEST CASCADE;

该命令请谨慎使用,防止影响生产环境。

 

标签:QHKTEST,数据库,DM7,用户,默认,TIME,PASSWORD,达梦
来源: https://blog.csdn.net/weixin_39766655/article/details/120841443

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有