DM7 表空间、用户管理

表空间管理

达梦数据库默认有哪些表空间和作用?
V$tablespace dba_tablespaces; v$huge_tablespace dba_data_files;

SQL> select tablespace_name,status from dba_tablespaces;
  • System:数据字典和全局的系统数据
  • Roll: 存放了数据库运行过程中产生的回滚记录。
  • TEMP:临时表空间
  • Main:数据库默认的表空间。创建数据对象的时候,如果不指定存放的位置,默认存放在该表空间。
  • HMAIN:HUGE表空间

相关参数:
Undo_retention :单位秒

# 查询所有表空间
SQL> select name from v\$tablespace union select name from v\$huge_tablespace;

规划表空间

# 案例1:
SQL> create tablespace tbs1 datafile '/dm7/data/DAMENG/tbs1_01.dbf' size 31;
# 报错 大小无效
SQL> create tablespace tbs1 datafile '/dm7/data/DAMENG/tbs1_01.dbf' size 32;

初始文件大小是页的4096倍。 4096*8K =32M

# 案例2:创建一个表空间,初始大小50M,最大100M
SQL> create tablespace tbs2 datafile '/dm7/data/DAMENG/tbs2_01.dbf' size 50 autoextend on maxsize 100;

SQL> select tablespace_name,status from dba_tablespaces;
# 案例3:创建一个表空间,初始大小50M,
# 表空间由2个数据文件组成,分别存储在不同磁盘上,每次扩展1m,每个数据文件最大100M.
SQL> create tablespace tb3 datafile '/dm7/data/DAMENG/tbs3_01.dbf' size 50 auto
  extend on next 1 maxsize 100,'/dm7/data/DAMENG/tbs3_02.dbf' size 50 autoextend on next 1 maxsize 100;

维护表空间

表空间不足,如何去维护表空间:

  1. 创建大表空间,数据导出,导入。
  2. Resize 数据文件大小。
  3. 增加数据文件。
SQL> alter tablespace tbs1 add datafile '/dm7/data/DAMENG/tbs1_02.dbf' size 32;

更换存储位置

达梦表空间的状态:

  • 0:---online
  • 1:---offline

注意:system,roll. Temp不能offline;

# 1、表空间offine
SQL> alter tablespace tb3 offline;

# 2、修改存储位置
SQL> alter tablespace tb3 rename datafile '/dm7/data/DAMENG/tbs3_02.dbf' to '/dm7/data/tbs3_02.dbf';

# 3、表空间online;
SQL> alter tablespace tb3 online;
# 删除表空间
SQL> drop tablespace tbs2;

用户管理

概念

在DM数据库中用户管理主要涉及到三块,用户,权限,角色。

  • 权限:执行特定类型sql或是访问其他模式对象的权利。
    • 系统权限:数据库对象的创建、删除、修改等等。
    • 对象权限:对数据库对象中的数据的操作权限。
  • 角色:是将具有相同权限的用户组织在一起,这一组具有相同权限的用户称为角色。角色是一组权限的集合。一个权限可以赋予不同的角色。

数据库预定义角色三个:DBA,PUBLIC,RESOUCE

三权分立和四权分立。

  • 三权分立:数据库管理员,数据安全员,数据库审计员。

  • 四权分立:数据库管理员,数据库对象操作员,数据库安全员,数据库审计员。

  • 默认的账号:

    • 数据库管理员:sysdba
    • 数据库对象操作员:sysdbo :只有在安全版里面才会有
  • 数据库安全员: syssso

    • 数据库审计员:sysauditor

所有账号的默认口令都与用户名一致大写。

SQL> select username from dba_users;

规划用户

  • 名字:字母开头,a-z,0-9,$#_
  • 位置:对应的表空间
  • 密码:口令策略
    • 0:无策略
    • 1:禁止与用户名相同
    • 2:口令长度不小于9
    • 4:至少包含一个大写字母
    • 8:至少包含一个数字
    • 16:至少包含一个标点符号(英文的状态下输入,除空格和“”)

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

创建用户语句 password policy 子句来指定口令策略。用户密码最长为48个字节。

  • Faild_login_attemps :密码尝试登录次数
  • Password_lock_time :密码失败后锁定时间
  • Password_life_time :密码过期时间。

用户视图:sysuser , all_user, dba_user

案例1:建立用户test,用户可以创建自己的表,有属于自己独立的表空间,用户密码要求每60天变更一次。

SQL> create tablespace test datafile '/dm7/data/DAMENG/test01.dbf' size 32;
SQL> create user test identified by dameng123 limit password_life_time 60 default tablespace test;
SQL> select * from all_users;
SQL> select user;
SQL> grant create table to test;

如何查看用户权限

SQL> select grantee,granted_role from dba_role_privs where grantee='TEST';
SQL> select grantee,privliege from dba_sys_privs where grantee='PUBLIC';

案例2:规划一个用户,用户每60天变更一次密码,密码尝试连接2次失败,账号锁定5分钟,用户能查询dmhr.employee表。

SQL> create user test1 identified by dameng123 limit password_life_time 60,failed_login_attemps 2,password_lock_time 5;

SQL> select username,account_status,lock_date from dba_users;
SQL> alter user test account unlock;
SQL> grant select on dmhr.employee to test1;
SQL> revoke select on dmhr.employee from test1;
SQL> grant select(employee_name,hire_date) on dmhr.employee to test1;
SQL> select employee_name,hire_date from dmhr.employee;

案例3:企业招聘一批录入人员,权限固定,只能录入city表。

SQL> create user test2 identified by dameng123;
SQL> create role r1;
SQL> grant insert on dmhr.city to r1;
SQL> grant r1 to test2;

# try
SQL> conn test2/dameng123
SQL> insert into dmhr.city values('aa','bbbb',7);
# 没有引用 [REGION] 权限

SQL> grant references any table to test2;
# try
SQL> conn test2/dameng123
SQL> insert into dmhr.city values('aa','bbbb',7);
# succeed
SQL> commit;

用户维护

# 收回权限:revoke
SQL> revoke r1 from test2;

# 修改用户密码:
SQL> alter user test2 identified by 123456789;

# 锁定用户:
SQL> alter user test2 account lock;

# 解锁用户:
SQL> alter user test2 account unlock;

# 删除用户:
SQL> drop user test2;
SQL> drop user r1;
SQL> drop user test1 cascade;---慎重,最好备份

猜你喜欢

转载自www.cnblogs.com/Forgenvueory/p/12757980.html