达梦数据库表空间和用户管理

达梦数据库表空间和用户管理

达梦数据库是达梦公司推出的具有完全自主知识产权的高性能数据库管理系统,为国产数据库中的佼佼者。
在当前严酷的国际竞争环境下,打破oracle、sqlserver等数据库的垄断,建设有自主知识产权数据库,是我国软件行业健康运行的基本保障。
达梦数据库做为国产数据库的领头羊,已经在政府、金融、信用、社保、国防、航空、铁路等领域有了深入的应用。本文将应DM7为例,介绍达梦数据库的表空间和用户管理。

表空间管理

表空间,是数据库的逻辑划分,一个表空间只能数据一个数据库。在一个数据库实例下,可以建立多个表空间,每个表空间可以对应多个数据文件,数据文件的大小主要是由操作系统控制的。

1、现有固定表空间介绍

  • 查询sql:
    select id,name,max_size,total_size from v$tablespace;
  • 查询结果:
    达梦数据库表空间和用户管理_第1张图片
  • 表空间介绍:
    SYSTEM:系统表空间,存放数据字典信息和全局的系统数据;
    ROLL:回滚表空间,存放了数据库运行过程中产生的回滚记录;
    TEMP:临时表空间,存放临时数据,临时表默认都存放在临时表空间上;
    MAIN:数据库默认的表空间,创建数据对象时,如果不指定存储位置,默认存放到该表空间。

2、新建表空间

  • 创建sql:
    Create tablespace 表空间名 datafile 数据文件路径 size 数据文件初始大小 autoextend on maxsize 最大值。
  • 参数说明:
    Size和maxsize 默认单位为MB,创建时只有数字显示,不需要带单位;
    表空间初始文件大小是页大小的4096倍。
  • 创建示例:
    Create tablespace DMTEST1 datafile ‘/dm7/data/DM02/DMTEST1.dbf’ size 32 autoextend on maxsize 100;

3、删除表空间

  • 删除sql:
    drop tablespace DMTEST1;
  • 说明:
    SYSTEM、RLOG、ROLL 和 TEMP 系统表空间不允许删除;
    表空间如果存在数据,则不允许直接删除。

4、扩展表空间

表空间的扩展主要由三种方式

  • 创建大表空间,然后进行导入导出操作;
  • resize 表空间数据文件的大小(注:所有的数据文件大小都应该一致,修改其中一个,另外的都要更改)
    alter tablespace DMTEST1 resize datafile ‘/dm7/data/DM02/DMTEST1.dbf’ to 256;
  • 给表空间增加数据文件
    Alter tablespace DMTEST1 add datafile ‘/dm7/data/DM02/DMTEST2.dbf’ size 50 autoextend on next 2 maxsize 100;

5、更改表空间数据文件路径

  • 操作sql:
    表空间离线
    Alter tablespace DMTEST1 offline;
    修改存储位置
    alter tablespace DMTEST1 rename datafile ‘/dm7/data/DM02/DMTEST1.dbf’ to ‘/dm7/data/DMTEST1.dbf’;
    表空间在线
    Alter tablespace DMTEST1 online;
  • 说明:
    system,roll,temp 不能进行离线操作。

用户管理

1、现有数据库用户介绍

  • 查询sql:
    Select username,account_status from dba_users;
    达梦数据库表空间和用户管理_第2张图片
  • 用户介绍:
    Sys:达梦数据库内置管理用户,不能登陆数据库;
    Sysdba:数据库的管理员;
    Sysauditor:审计员,配置审计策略,分析审计日志;
    Syssso:安全员(只在安全版本内存在),配置安全策略 。

2、用户口令策略及设置

0:无策略
1:禁止与用户名相同
2:口令长度不小于9
4:至少包含一个大写字母(A-Z)
8: 至少包含一个数字(0-9)
16:至少包含一个标点符号(英文状态输入,除”和空格除外)
口令可以单独使用,也可以组合使用;
密码尝试登录次数:faild_login_attemps
密码失败锁定时间:password_lock_time
密码过期时间:password_life_time

3、创建用户

  • 创建sql:
    create user 用户名 identified by 密码 limit 密码策略 default tablespace 默认表空间;
    Grant 权限类型 to 用户名;
  • 示例:
    create user DMTEST1 identified by DMTEST1 limit password_life_time 60 default tablespace DMTEST1;
    Grant resource to DMTEST1;

4、删除用户

  • 用户没有相关数据:
    Drop user 用户名;
  • 用户下有数据:
    Drop user 用户名 cascade;

5、修改密码

alter user 用户名 identified by 新密码;

6、锁定/解锁用户

  • 锁账户:
    Alter user 用户名 account lock;
  • 解锁账户:
    Altet user 用户名 account unlock;

7、用户权限设置

创建用户后,可以按照需求直接给用户赋权,也可以通过设置角色权限,然后用户与角色关联进行赋权。

  • 直接赋权:
    Grant 权限类型 to 用户名;
  • 角色赋权:
    create role 角色名;
    grant 权限类型 to 角色名;
    grant 角色名 to 用户名;

你可能感兴趣的:(达梦数据库)