数据库运行

依赖不同类型的文件 ,数据文件 参数文件 控制文件 redo日志文件 运行日志文件 审计日志文件等
数据文件 就是表空间文件 存储数据库的数据文件
参数文件 用户修改的配置信息
控制文件 数据库最重要的文件 记录数据库的状态 表空间信息等
redo文件 保障数据库异常退出 不丢失数据
运行日志文件 记录数据库运行中的日志 用于问题定位
审计日志文件 记录DDL DCL DML 等SQL命令

参数文件位置 : /opt/zenith/app/data/cfg/zengine.ini 在数据文件的cfg目录下

#修改 alter system checkpoint_pages = 20000 scope =both ;
#查看 select * from DV_parameters where name = "checkpoint_pages"

控制文件 : 参数文件中制定控制文件位置
       control_files = /opt/zenith/data/ctrl1 /opt/zenith/data/ctrl2 /opt/zenith/data/ctrl3

控制文件有三个副本 每次修改三个副本同时修改
       系统重启时 通过检测 某个副本损坏 尝试使用其他副本 进行加载 同时修复损坏副本
       控制文件可以指定不同路径 提高可靠性
控制文件信息

系统版本号 表空间列表 数据文件列表 redo文件列表 归档日志列表 系统SCN CHECKpoint 的RCY point/LRP point

redo日志 
WAL write ahead log 预写日志
       修改数据页面时记录redo日志
       事务提交保证redo日志写入磁盘
       通过checkpoint 后台线程将修改的数据写入磁盘
      异常恢复时通过 redo日志恢复数据
redo日志文件状态 : in-active active current redo日志循环使用
添加redo日志 alter database add logfile('log1' size 128M)  删除redo日志 : alter database dtop logfile('log1')    DV_LOG_FILES 视图

归档日志:归档日志是redo日志的副本
当redo日志 从active状态变成in-active 将数据写入磁盘后,还需要生成对应的归档文件
主备环境主机redo复用
备机是通过主机的redo日志文件重演恢复数据 如果主机redo复用后备机需要 通过归档日志来恢复数据
物理备份中redo复用
物理备份时数据库还能继续使用 会产生新的redo日志 如果redo复用后 需要将归档日志也备份 用来保障可以恢复到备份时的一致数据
归档模式只能在mount模式下设置
alter database archivelog/noarchivelog
归档路径设置
LOG_ACHIVE_DEST_1 = LOCATION = /opt/zenith/data/achive_log
max_arch_files_size 归档日志占最大空间
arch_clean_ignore_backup 归档清理忽略备份
arch_clean_igone_standby 归档清理忽略备机

参数配置演示

# 修改 max_arch_files_size 制定scope=pfile 制定下次重启生效 
zsql sys/sys@127.0.0.1:1611
select name,value,isdefault,effective from dv_parameters where name = 'max_arch_files_size'
alter system set max_arch_files_size = 32G scope=pfile
select name,value,isdefault,effective from dv_parameters where name = 'max_arch_files_size'
# 添加三个redo文件 
alter database add logfile('log4' size 64M , 'log5' size 128M , 'log6' size 256M)
select id,status,file_name,bytes from dv_log_files
# 删除redo日志文件 
alter database drop logfile("log4")

数据库用户管理
数据库用户 角色 权限的介绍

用户: 连接数据库 访问数据库对象 执行SQL语句
角色:角色是一组命名的权限集合 数据库使用角色进行权限组织和划分
意义: 权限分组 并授予角色 可以将角色授予用户 相当于批量授予权限
注意: 角色在系统中唯一 角色名不能重复 不能登录和执行sql语句 不属于用户

权限:执行特定sql语句 以及访问或维护某一对象的能力
权限类型: 系统权限 对象权限

用户权限角色的关系
可以定义角色进行权限的组织和划分 角色赋予其他角色 其他角色拥有此角色所有权限 角色的权限可以继承

模式:schema 是对象的集合 由数据库拥有 并与用户具有相同的名称
模式对象包括: 表 视图 索引 序列 同义词 触发器

用户和模式的关系 : 每个用户有独立的模式 名字和用户相同 创建时对应的模式同时被创建

系统预置用户
SYS 系统初始超级管理员用户 最高权限
PUBLIC 公共用户 无法登陆到数据库 如果授权给public一个权限 就会授权给所有用户此权限
系统预置角色
DBA 系统管理员 系统所有权限
RESOURCE 创建基础对象角色 创建存储过程 创建序列 创建表 创建触发器权限
CONNECT 连接数据库权限
STATISTICS 统计角色 创建删除 查看WSR权限 生成WSR报告权限

# 自定义用户创建
create user username identified by "passwd" default tablespace tablespace1; # 设置表空间
create user username identified by "passwd" account lock ; # 账户锁定不等登录
# 修改用户
alter user 需要有alter user的系统权限 如果用户不存在会报错
# 修改密码
alter user usernmae identified by "password" replace "PASSWD"
# 修改表空间
alter user username default tablespace tablespace_t;
# 修改锁定状态
alter user username account unlock;
# 删除用户 #强制删除数据库对象
drop user if exists username cascade;
# 创建自定义角色 #删除自定义角色
create role role_name ; drop role role_name DB database DV data_view

系统权限
用户对系统操作的能力 可以执行一定的sql语句
SYS 与DBA角色 拥有所有系统权限 支持通过角色 继承进行系统权限管理
create session 连接数据库 create user 创建新用户 alter user 修改用户 drop user 删除用户 create role 创建角色
drop any role 删除任意角色 alter system 修改系统信息 grant any privilege 授予收回系统权限 grant any role 授予角色
grant any object privilege 授权任意用户的对象权限

对象权限
对数据库对象有执行操作的能力 可以访问或维护某一特定的对象 表 视图 序列 索引 存储过程等
SYS和DBA拥有该对象的所有权限
select 查询 delete 删除数据 upadte 更新数据 alter 更新对象定义 insert 插入 index 创建索引 references 外键约束

系统权限 角色授权
满足条件 :
with admin option / grant any privileges系统权限 ---> 授权系统权限
with admin option / grant any role系统权限 ----> 授权角色

grant create session to username WITH ADMIN OPTION ; # 授权连接 和授权权限
grant teacher TO username ; # 授权teacher 角色

授权角色对象权限
条件:
with grant option / grant any object privileges 并且是该对象的创建者
grant select on table1 to username with grant option ;

回收 revoke
条件:
with admin option / grant any privileges 回收系统权限 with admin option / grant any role系统权限 ----> 授权角色
revoke create session from username / revoke teacher from usernmae

Profile
profile 是配置档案 包含一组资源和密码策略
profile可以通过DDL 语句 create user 或 alter uer 赋予用户
profile 赋予用户后 数据库就要按照profile的规定来 限制用户的资源使用

failed_login_attempts 最大登录次数 默认10次
password_life_time 允许密码使用天数 默认180天
password_lock_time 超过失败次数之后锁定时间 默认1天
password_grace_time 密码失效天数 告警 默认7天
password_reuse_time 密码在多少天内不能重复使用 ulimited
password_reuse_max 指定了当前密码被重用之前密码改变的次数 ulimited
session_per_user 制定了每个用户的连接数 连接数必须小于连接池 ulimited

profile 将profile赋予用户 不会影响当前会话 只能赋予用户 如果创建时为赋予profile 则使用默认profile
系统默认profile

# 自定义profile
create profile pro_common limit passwd_grace_time 10 password_lock_time default password_lift_time unlimited ;
# 修改profile
alter profile pro_common limit password_life_time 30;
# 删除profile 删除后会默认绑定default profile 如果绑定profile 需要加上cascade
alter profile pro_common cascade;
# 赋予profile
alter user username profile pro_common;

  

【HICP Gauss】数据库 数据库管理(文件 用户管理 系统权限 对象权限 profile)-7的更多相关文章

  1. 基于Git的数据库sql文件的管理——完美解决团队sql操作协同问题

    目录 基于Git的数据库sql文件的管理--完美解决团队sql操作协同问题 1.产生背景 2.之前没用Git管理数据库出现的问题 2.1 用同一个库调试带来的问题 3.解决方案 3.1 Sql文件的创 ...

  2. MariaDB数据库 ----数据库简介,用户管理,数据库创建,数据类型、数据增删改(实例演示)

    数据库简介 数据库--即电子文件柜,用户可以对文件中的数据进行增,删,改,查等操作. 数据库分类 关系型数据库 关系型数据库管理系统(Relational Database Management Sy ...

  3. SQL Fundamentals || DCL(Data Control Language) || 系统权限&对象权限管理(GRANT&REVOKE)

    SQL Fundamentals || Oracle SQL语言 语句 解释 Create user Creates a user(usually performed by a DBA) Grant ...

  4. oracle用户管理, 授权与回收权限

    一. 用户管理参数, 0.删除用户: drop user 用户名 [cascade] 当我们删除用户时, 如改用户已创建过数据对象, 那么删除用户时必须加cascade参数, 用来同步删除 改用户的所 ...

  5. 二、linux基础-路径和目录_用户管理_组_权限

    2.1路径和目录1.相对路径:参照当前目录进行查找.   如:[root@localhost ~]# cd ../opt/hosts/备注:相对路径是从你的当前目录开始为基点,去寻找另外一个目录(或者 ...

  6. Oracle_系统和对象权限管理

    授予系统权限: GRANT { system_privilege | role } [,{ system_privilege | role }]... ... TO {user | role | PU ...

  7. 数据库创建,用户管理,导入dmp文件

    创建数据库文件 CREATE TABLESPACE toolset LOGGING DATAFILE '/home/oracle/app/oracle/oradata/orcl/toolset.dbf ...

  8. 还原Oracle数据库dmp文件(Win系统)

    准备工作: 1.核对数据字符集:   一般Oracle在安装的时候默认是选择ZHS16GBK,如有改动,使用 select userenv('language') from dual;语句查看使用的字 ...

  9. linux文件经 windows系统 之后出现 权限缺失 的解决方法

    把Linux下的文件拷贝到windows,再拷贝到Linux时,文件的权限丢失. 解决办法: 把文件压缩后,将压缩文件拷贝到windows系统上,再拷贝压缩文件到linux服务器,在目标linux服务 ...

随机推荐

  1. python初级(302) 7 列表

    一.列表的概念: 1.创建一个列表 friends = list() 2.列表可以包含的内容: m_list = [5, 7, 9, 20] letters = ['a', 'b', 'e'] 3.从 ...

  2. Mysql日期函数说明

    1.获取当天日期 current_date  ->   2019-07-17 00:00:00 2.获取昨天日期函数 date_sub(current_date,INTERVAL 1 day)  ...

  3. django:将query-set类型转为json类型

    import json data = json.dumps(list(my_table.objects.all().values())) return HttpResponse(data)

  4. 【视频开发】Gstreamer中一些gst-launch常用命令

    GStreamer是著名的开源多媒体框架,功能强大,其命令行程序 gst-launch 可以实现很多常规测试.播放等,作为系统调试等是非常方便的. 1.摄像头测试 gst-launch v4l2src ...

  5. php判断key是否存在的两种方法

    array_key_exists($key, $array) isset($array[$key]) 两种方式都可以!

  6. BFS --- 素数环

    <传送门> [题目大意]对话很坑爹,不过很有意思,直接看题干就可以了.给你两个四位数a和b,现在要你从a经过变换得到b,并且变换的中间的每一位都要是素数,并且相邻两个素数之间只能有一个位不 ...

  7. python 开机 定时启动

    Windows开机自动运行.py文件1.找到写好的.py文件,例如我的.py文件路径:D:\编程测试文件\untitled\03131105.py 2.选中文件03131105.py,右键——属性—— ...

  8. GO指南练习:切片

    最近开始GO语言的学习,在GO指南中练习到切片这个题目 练习:切片 实现 Pic.它应当返回一个长度为 dy 的切片,其中每个元素是一个长度为 dx,元素类型为 uint8 的切片.当你运行此程序时, ...

  9. 在Go中简单实现HTTP服务中间件

    通常一个简单http服务框架,就是注册一堆路由,然后根据路由调用不同的逻辑去处理. 但实际上可能有一些统一的处理对几乎所有的路由都涉及到,比如日志,比如权限等等. 那么这个时候搞一个中间做预处理,是一 ...

  10. [终极巨坑]golang+vue开发日记【二】,登陆界面制作(一)

    写在前面 本期内容是适合第一次使用vue或者golang开发的,内容会以实战的形式来讲解.看懂本段内容需要了解基础内容有html,css,最好可以看一下vue的基础.并且这里的每个知识点不可能详细解说 ...