达梦学习笔记

  • 达梦数据库的状态
    4种状态
    shutdown、mount、 open、 suspend
    状态切换
    shutdown – mount
    shutdown – open
    open – mount
    查看达梦数据库状态
    select status$ from v$instance;

  • 达梦数据库的体系结构
    达梦逻辑存储结构
    1.数据库由一个或多个表空间组成
    2.每一个表空间由一个或多个数据文件组成
    3.每个数据文件由一个或多个簇组成
    4.页是数据库最小的分配单位,也是数据库中使用的最小的IO单元
    实例:共享内存+后台的进程或是线程,相当于管理数据文件的系统概念
    数据库:存放到磁盘的文件,可以理解为物理文件
    一般一个db对应一个实例,但是DSC(共享集群)多个实例对一个数据库。
    达梦服务器组成:客户端+服务器(实例+数据库)
    客户端不能直接去访问数据库,客户端把请求交给实例,实例去访问数据库,把访问信息返回给实例,实例交给客户端。
    达梦的物理存储结构
    配置文件:dm.ini 、dmarch.ini …等
    控制文件:dm.ctl ctl_bak_path
    数据文件:以.dbf结尾的文件
    重做日志文件:又叫redo日志。主要用于数据库的备份和恢复。
    归档文件:利用归档日志,系统可被恢复至故障发生的前一刻,也可以还原到指定的时间点,如果没有归档日志文件,则只能利用备份来进行恢复。
    备份文件:以bak为扩展名的文件
    日志文件:跟踪日志,事件日件

    重做日志管理
    查看日志信息

select path from v$rlogfile;

增加一个日志文件

alter database add logfile ‘/dm7/data/DAMENG/DAMENG04.log’ size 500;

修改日志文件大小

alter database resize logfile ‘/dm7/data/DAMENG/DAMENG04.log’ to 1024;

表空间管理
表空间介绍

select TABLESPACE_NAME,STATUS from dba_tablespaces;

system表空间: 数据字典和全局的系统数据。
ROLL表空间:存放了数据库运行过程中产生的回滚记录。
TEMP表空间:临时表空间。
MAIN表空间:数据库默认的表空间,创建数据对象时,如果不指定存储位置,默认存放到该表空间。
HMAIN表空间:huge 表空间。
查所有表空间信息:

Select name from v$ tablespace union select name from v$huge_tablespace

增加表空间

create tablespace tab1 datafile ‘/dm7/data/DAMENG/tab1_01.dbf’ size 32;

案例2 创建一个表空间,初始大小50M,最大100M.

create tablespace tab2 datafile ‘/dm7/data/DAMENG/tab2_01.dbf’ size 50 autoextend on maxsize 100;

案例3 创建一个表空间,初始50M,每次扩展1M,最大100M.

create tablespace tab3 datafile ‘/dm7/data/DAMENG/tab3_01.dbf’ size 50 autoextend on next 1 maxsize 100;

案例4 创建一个表空间,初始50M,表空间由2个数据文件组成,分别存储到不同的磁盘上,每次扩展1m,每个数据文件最大100M.

create tablespace tab4 datafile ‘/dm7/data/DAMENG/tab4_01.dbf’ size 50 autoextend on next 1 maxsize 100 , ‘/dm7/data/DAMENG/tab4_02.dbf’ size 50 autoextend on next 1 maxsize 100;

维护表空间
表空间不足,如何去维护表空间:
1、创建大表空间,数据导出,导入。
2、Resize 数据文件大小。
3、增加数据文件

alert tablespace tabs2 add datafile ‘/dm7/data/DAMENG/tab2_02.dbf’ size 50 autoextend on maxsize 100;

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

alter tablespace tbs1 offline;

2.修改存储位置

alter tablespace tbs1 rename datafile ‘/dm7/data/DAMENG/tbs1_01.dbf’ to ‘/dm7/data/tbs1_01.dbf’;

3.表空间online

alter tablespace tbs1 online;

删除表空间

drop tablespace tbs1;

如果表空间有数据库不允许直接删除!
用户管理
查询有哪些用户

select username from dba_users;

1、sys — 达梦数据库的内置管理用户,不能登录数据库,数据库使用的大部分的数据字典和动态性能视图,sys
2、Sysdba —数据库的管理员
3、Sysauditor — 审计用户
4、Syssso—安全用户
5、sysdbo --数据操作员 (安全版有,四权分立)
如何规划用户
名字:字母开头,a-z,0-9,$#_
密码:
口令策略:
用户密码最长为48个字节,创建用户语句使用 password policy子句来指定口令策略。(DM.INI PWD_POLICY)
系统支持的口令策略:
0 无策略
1 禁止与用户名相同
2 口令长度不小于9
4 至少包含一个大写字母(A-Z)
8 至少包含一个数字(0-9)
16 至少包含一个标点符号(英文状态输入,除”和空格外)
口令可以单独使用,也可以组合使用,比如需要应策略1和2,
则设置口令策略为:3
相关参数
密码尝试登录次数 FAILED_LOGIN_ATTEMPS
密码失败锁定时间 PASSWORD_LOCK_TIME
密码过期时间 PASSWORD_LIFE_TIME
案例1:为数据库设置一个用户,该账户,可以创建自己的表,有属于自己的独立表空间,用户密码要求每60天变更一次。

create tablespace test datafile ‘/dm7/data/DAMENG/test01.dbf’ size 32;

create user test identified by dameng123 limit password_life_time 60 default tablespace test;

规划用户权限
系统权限 create drop alter 能够对数据库做什么操作。
对象权限(表,视图,过程等等)select delete update insert
查看角色

select role from dba_roles;

查看用户权限

select grantee,granted_role from dba_role_privs where
grantee=‘TAB1_USER’;

查询角色所拥有的权限

select grantee,privilege from dba_sys_privs where grantee=‘PUBLIC’;

案例2 新建一个test用户,并在test用户下创建表t1;
1.使用sysdba为用户授权

grant create table to tab1_user;

2.使用授权用户登录并创建表

conn tab1_user/dameng123 create table t1(id int);

案例3:规划一个用户,账户每60天变更一次密码,密码尝试连接2次失败,账户锁定5分钟,用户还可以查询dmhr.employee表。
1.为用户授权

grant select on dmhr.employee to test1

2.为用户解锁

alter user test1 account unlock;

案例4 企业招聘一批录入人员,权限是固定的,只有录入CITY表,
角色:一类权限的集合,
1.创建用户

create user test2 identified by dameng123;

2.创建角色

create role r1;

3.为角色授权

grant insert on dmhr.city to r1;

grant references any table to r1;

5.把角色赋给用后

grant r1 to test2;

用户维护
撤回权限revoke

revoke insert on dmhr.city from r1;

修改用户密码

alert user test identified by dameng123456;

修改用户锁定状态

alter user test account lock;

alter user test account unlock;

删除用户

drop user test1

drop user test1 cascade;

Drop user test cascade ----慎用,删除之前,我们一定要做备份。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值