达梦数据库: DM8中管理非模式对象的基本操作手册

时间:2024-03-19 17:19:36

一、管理表空间

1.1介绍表空间
select TABLESPACE_NAME,STATUS from dba_tablespaces;
达梦数据库: DM8中管理非模式对象的基本操作手册

1.2查看所有表空间信息
可以通过查询动态视图 VTABLESPACE 得到系统中所有表空间的信息,通过查询动态视图 VTABLESPACE得到系统中所有表空间的信息,通过查询动态视图VDATAFILE 得到系统中所有数据文件的信息。
达梦数据库: DM8中管理非模式对象的基本操作手册
达梦数据库: DM8中管理非模式对象的基本操作手册

1.3创建表空间
理论上最多允许有 65535 个表空间,但用户允许创建的表空间 ID 取值范围为0~32767,超过 32767 的只允许系统使用,ID 由系统自动分配,ID 不能重复使用,即使删除掉已有表空间,也无法重复使用已用 ID 号,也就是说只要创建 32768 次表空间后,用户将无法再创建表空间。
a.表空间初始文件的大小是页大小的4096倍。
create tablespace tbs1 datafile ‘/home/dmdba/dmdbms/DAMENG/tbs1_01.dbf’ size 128;
达梦数据库: DM8中管理非模式对象的基本操作手册

b.创建一个表空间,初始大小128M,最大300M.
达梦数据库: DM8中管理非模式对象的基本操作手册

c.创建一个表空间,初始大小128M,每次扩展1M,最大300M。
达梦数据库: DM8中管理非模式对象的基本操作手册

d.创建一个表空间,初始128M,表空间由2个数据文件组成,分别存储到不同的磁盘上,每次扩展1M,每个数据文件最大300M。
达梦数据库: DM8中管理非模式对象的基本操作手册

1.4维护表空间
表空间不足时,有一下方法维护表空间:
a.创建大表空间,数据导出,导入。
b.扩展数据文件的大小
达梦数据库: DM8中管理非模式对象的基本操作手册

c.添加数据文件
添加的数据文件大小最小为 4096*页大小。一个表空间中,数据文件和镜像文件一起不能超过 256 个。
SQL> alter tablespace tbs1 add datafile '//home/dmdba/dmdbms/DAMENG/tbs1_02.dbf' size 200;

达梦数据库: DM8中管理非模式对象的基本操作手册

1.5更改储存位置
达梦表空间的状态:0 —online;1 ----- offline
注意:SYSTEM,ROLL, TEMP 不能offline;

达梦数据库: DM8中管理非模式对象的基本操作手册

使表空间脱机
达梦数据库: DM8中管理非模式对象的基本操作手册

修改存储位置
达梦数据库: DM8中管理非模式对象的基本操作手册

表空间online
达梦数据库: DM8中管理非模式对象的基本操作手册

1.6删除表空间
注:如果表空间存有数据,不允许直接删除!!
达梦数据库: DM8中管理非模式对象的基本操作手册
达梦数据库: DM8中管理非模式对象的基本操作手册

1.7查看表空间中有那些表
SQL> select table_name,tablespace_name from dba_tables where tablespace_name=‘TT1’;(表空间名要大写)
达梦数据库: DM8中管理非模式对象的基本操作手册

二、管理用户

2.1达梦数据库的用户
达梦数据库: DM8中管理非模式对象的基本操作手册

2.2规划用户
名字:字母开头,a-z,0-9,$#_
位置:
Create tablespace
密码:
口令策略:
用户密码最长为48个字节,创建用户语句使用 password policy子句来指定口令策略。(DM.INI PWD_POLICY)
系统支持的口令策略:
0 无策略
1 禁止与用户名相同
2 口令长度不小于9
4 至少包含一个大写字母(A-Z)
8 至少包含一个数字(0-9)
16 至少包含一个标点符号(英文状态输入,除”和空格外)
口令可以单独使用,也可以组合使用,比如需要应策略1和2,
则设置口令策略为:3
设置一个用户,该用户可以创建自己的表,有属于自己的独立表空间,用户密码要求每60天变更一次。
a.创建表空间tbs5
SQL> create tablespace tbs5 datafile ‘/home/dmdba/dmdbms/DAMENG/tbs5_01.dbf’ size 128;
达梦数据库: DM8中管理非模式对象的基本操作手册

b.创建用户tbs5,密码为dameng123,有自己的独立存储空间tbs5,密码60天变更一次。
create user tbs5 identified by dameng123 limit password_life_time 60 default tablespace tbs5;
达梦数据库: DM8中管理非模式对象的基本操作手册

2.3修改密码
将用户tbs5的密码修改为dameng321
达梦数据库: DM8中管理非模式对象的基本操作手册

2.4 锁定用户
锁定用户tbs5,使其无法登录和进行操作。
达梦数据库: DM8中管理非模式对象的基本操作手册

2.5 解锁用户
连接数据库后,解锁用户tbs5。
达梦数据库: DM8中管理非模式对象的基本操作手册

2.6 删除用户
删除用户tbs5。
达梦数据库: DM8中管理非模式对象的基本操作手册

2.7规划用户权限
对象权限(表,视图,过程等等)select delete update insert
达梦数据库: DM8中管理非模式对象的基本操作手册

2.7.1查看角色
SQL> select role from dba_roles;
达梦数据库: DM8中管理非模式对象的基本操作手册

2.7.2查看用户相应的角色和权限
SQL> select grantee,granted_role from dba_role_privs where grantee=‘tbs5’;
达梦数据库: DM8中管理非模式对象的基本操作手册

2.7.3查询角色所拥有的权限
SQL> select grantee,privilege from dba_sys_privs where grantee=‘PUBLIC’;
达梦数据库: DM8中管理非模式对象的基本操作手册

2.7.4赋权给用户
赋权给用户tt1,并在tt1用户下创建表t1
Grant []
达梦数据库: DM8中管理非模式对象的基本操作手册

三、管理模式

模式:一组数据对象的集合,为了安全,创建用户的时候,就会生成一个跟用户同名的模式

3.1创建模式
创建模式tt2,使其属于用户tt1
SQL> create schema “tt2” authorization “tt1”;
达梦数据库: DM8中管理非模式对象的基本操作手册
达梦数据库: DM8中管理非模式对象的基本操作手册

3.2删除模式
SQL> drop schema tt2;
达梦数据库: DM8中管理非模式对象的基本操作手册

四、管理角色

4.1查看所有角色
SQL> select * from dba_roles;
达梦数据库: DM8中管理非模式对象的基本操作手册

4.2创建角色
创建角色role_test;
SQL> create role role_test;
达梦数据库: DM8中管理非模式对象的基本操作手册

4.3给角色赋权
将角色role_test赋权给用户rtest,并使用户的角色只属于role_test,通过查看可发现用户现在没有任何权限。
达梦数据库: DM8中管理非模式对象的基本操作手册
达梦数据库: DM8中管理非模式对象的基本操作手册
达梦数据库: DM8中管理非模式对象的基本操作手册
达梦数据库: DM8中管理非模式对象的基本操作手册

登录SYSDBA后给角色role_test赋权,测试后发现用户rtest拥有了该权限

达梦数据库: DM8中管理非模式对象的基本操作手册
达梦数据库: DM8中管理非模式对象的基本操作手册

4.4删除角色
删除角色role_test.

达梦数据库: DM8中管理非模式对象的基本操作手册

五、权限管理

5.1权限分类
5.1.1系统权限
操作数据对象本身的权限:create,alter,drop等
达梦数据库: DM8中管理非模式对象的基本操作手册

5.1.2对象权限
操作数据库对象内部数据的权限:insert,update,delete,select等
达梦数据库: DM8中管理非模式对象的基本操作手册

5.1.3角色权限
一组系统权限和对象权限的集合。
5.2授权
5.2.1系统权限
Grant 权限 to 用户或者角色名(with admin option);
授权者须具有对应的数据库权限及其转授权;
接受者必须与授权者用户类型一致;
如果有WITH ADMIN OPTION选项,接受者可以把这些权限转授给其他用户/角色.
5.2.2角色权限
Grant all privileges|select|insert|delete|update on 模式对象名 to 用户或者角色名(with grant option);
5.3撤销权限
5.3.1撤销系统权限
revoke 权限 from 用户或者角色名 (admin option for)
5.3.2撤销角色权限
Revoke all privilegs|select|insert|delete|update on 模式对象名 to 用户或者角色名