Oracle日常维护中管理用户以及重做日志文件的方法_oracle

一、管理用户和安全性
在db中各种对象以 用户(方案) 的方式组织管理

    select distinct object_type from dba_objects;

        模式对象,schema ----> user.objects(某个用户下的某个对象)

在创建对象和访问对象前,首先创建对象的拥有者——用户
        所有的对象在用户下

用户有相关的属性,有些必须明确设置,有些可以使用默认值
        常见属性:用户名、口令、默认表空间(可默认)、临时表空间(可默认)、账户状态(可默认)、空间配额(可默认)、概要文件(可默认)等
        dba_users表

创建用户

        1 确定用户对象在表空间上的分布,从而确定表空间的配额

        2 确定用户的默认表空间和临时表空间,保持用户数据的独立性

        create user u1 identified by u1; --->默认 users表空间和temp表空间
        create user u2 identified by u2 default tablespace user_u2 temporary tablespace temp_u2; --->指定user_u2表空间和temp_u2表空间

                
        3 确定用户的口令管理规则和资源闲置规则,设置Profile
                dba_users表可以查到profile文件

        4 创建用户,设置口令

        5 给用户赋予必要的角色和其他的直接权限
                一般要设置connect, resource给一个新用户:

grant connect, resource to u1;
        grant creata session to u1;    --->设置会话的权限

删除用户

    drop user u1;

        如果用户方案中包含对象,drop user u1 CASCADE;
        当前已经连接的用户不能删除

权限

        系统权限 + 对象权限
        grant授予,revoke回收
        sysdba和sysoper才能授予权限

    select * from session_privs;    --->查询当前用户的权限
    select * from session_roles;    --->查询当前用户的角色
    select * from role_sys_privs;    --->查询当前用户的角色权限
    select * from user_sys_privs;    --->查询当前用户的系统权限

二、重做日志文件
redo log files        重做日志文件或联机日志
        archived log files        归档日志
        alert log files        告警日志
        trace files        user_dump_dest   用户        background_dump_dest   进程

重做日志文件

查询

    >select * from v$logfile;   

  status列:invalid该文件不可访问(不存在或添加到该组的新logfile)|stale内容不完全|deleted不再使用

    >select * from v$log;    

status列:unused未写入|current当前组,活动的|active非当前组,活动的,可能已归档也可能没有|clearing正在重建空日志(执行了alter database clear logfile),完成后变为unused状态

作用

        在数据库发生故障时,可以重新处理事务
        记录对数据所做的所有更改,提供恢复机制,可以划分成组,至少两个组,每组下至少有一个成员file

        写日志时按组顺序循环写,g1(f1-f2-f3-……)-g2(f1-f2-f3-……)-g3(f1-f2-f3-……)-……
        日志切换:g1-g2-g3-……   自动切换   手工切换 (alter system  switch logfile)

规划

        分散原则:每个组多个成员,成员互为备份,分开到不同的磁盘。例子:

        大小原则:组间切换时间满足20分钟左右的业务需求

增减删

        新建组
 

    alter database add logfile [group <X0>] ('<logfile path&name>','',……) size <Y>, [group <X1>] ……

        添加成员

    alter database add logfile member '<logfile path&name>' to group <X0>,'<logfile path&name>' ……

        删除组
 

    alter database drop logfile group <X>, group……

  active状态和current状态不可删
        删除成员
 

    alter database drop logfile member '<logfile path&name>','<logfile path&name>',……;

        
        重命名成员(可以做日志移动等)

    ho cp <old> <new>
    alter database rename file '<old>' tp '<new>';

                 归档模式下 current状态不可重命名;非归档模式下  都可以改

        【alter database noarchivelog|archivelog;】
       
异常处理

        启动时日志不一致问题

    alter database clear logfile group <X>; 

active状态和current状态不可用

    alter database clear unarchived logfile group <X>;

        日志文件丢失

    alter database clear logfile group <X>;

        归档模式下不能clear时,

    recover database using backup controlfile;alter database open resetlog;

        非归档模式不能clear时,

    alter system set "_allow_resetlogs_corruption"=true scope=spfile;

        startup;

    alter system reset "_allow_resetlogs_corruption" scope=spfile sid='*';

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索oracle
, 管理用户
重做日志
oracle重做日志、oracle 重做日志文件、oracle重做日志大小、oracle 在线重做日志、oracle 联机重做日志,以便于您获取更多的相关知识。

时间: 2024-11-01 13:55:15

Oracle日常维护中管理用户以及重做日志文件的方法_oracle的相关文章

在Oracle PL/SQL中游标声明中表名动态变化的方法_Oracle应用

/*     小弟刚刚接触ORACLE存储过程,有一个问题向各位同行求教,小弟写了一个存储过程,其目的是接收一个参数作为表名,然后查询该表中的全部记录的某一个字段的内容导入到另一个表中.     (     tabname in varchar     )     is     v_servicesname tabname.服务类型%type; --这个变量就是用来存放所要取得的字段内容,但不知该如何定义     cursor curSort1 is select 服务类型 from tabna

Oracle如何联机重做日志文件

一.Oracle中的几类日志文件 Redo log files      -->联机重做日志 Archive log files   -->归档日志 Alert log files     -->告警日志 Trace files         -->跟踪日志 user_dump_dest          -->用户跟踪日志 backupground_dump_dest  -->进程跟踪日志 --查看后台进程相关目录 SQL> show parameter du

【体系结构】Oracle重做日志文件(Redo Log Files)

Oracle重做日志文件 --========================================= -- Oracle 联机重做日志文件(ONLINE LOG FILE) --=========================================   一.oracle中的几类日志文件     Redo log files      -->联机重做日志     Archive log files   -->归档日志     Alert log files     --&

ORACLE 移动数据文件 控制文件 重做日志文件

ORACLE数据库有时候需要对存储进行调整,增加分区.IO调优等等,此时需要移动数据文件.重做日志文件.控制文件等等,下文结合例子总结一下这方面的知识点. 进行数据文件.重做日志文件.控制文件的迁移前,需要总体了解一下当前Linux服务器的磁盘.分区信息,以及服务器文件使用情况,如下所示 查看Linux服务器的文件使用情况 1: [root@DB-Server ~]# df -h 2:  3: Filesystem Size Used Avail Use% Mounted on 4:  5: /

ORACLE使用LogMiner分析重做日志文件全部步骤(WINDOWS NT CHINESE VERSION)

oracle|window oracle安装于磁盘d:1. 重新建立PL/SQL包DBMS_LOGMNR_D打开d:\oracle\ora81\rdbms\admin\dbmslmd.sql查找"TYPE col_desc_array IS VARRAY(513) OF col_description;"改为"TYPE col_desc_array IS VARRAY(1023) OF col_description;"在Server Manager中执行以下命令S

oracle物理结构(三)重做日志文件

1.存放所有事物日志. 重做日志的两个概念,重做日志组和重做日志组成员. 一个数据库中至少要有两个日志组文件,一组写完后再写另一组,即轮流写.每个日志组中至少有 一个日志成员,一个日志组中的多个日志成员是镜相 关系,有利于日志文件的保护. 2.联机日志组的交换过程叫做切换.特别注意:日志切换在一个优化效果不好的数据库中会引起临 时的"挂起".挂起大致有两种情况: 在归档情况下,需要归档的日志来不及归档,而联机日志又需要被重新利用 检查点事件还没有完成(日志切换引起检查点),而联机日志需

MySQL中二进制与重做日志文件的基本概念学习教程_Mysql

二进制日志二进制日志记录了所有对数据库执行更改的操作,二进制主要有以下两种作用: 1.恢复(recovery)2.复制(replication) 二进制日志的启动:配置参数log-bin[=name],如果不指定name,则默认二进制日志文件名为主机名,后缀名为二级制日志的序列号,所在路径为数据库所在目录. 以index为后缀的文件为二进制日志的索引文件,用来存储过往生产的二进制日志. 和二进制日志相关的参数: max_binlog_size.binlog_cache_size.sync_bin

oracle 11g rac 添加重做日志文件

1)实验思路: [1]查看当前联机重做日志文件信息 [2]实验前进行必要的文件备份 [3]增加两组联机重做日志文件,每个文件大小为2G [4]查看oracle运行状态,每个实例各一个,这样每个实例一共各有5个日志文件 [5]再次增加一组日志文件,每个实例各一个,这样每个实例一共有5个日志文件 [6]删除原来的两组300MB的日志文件 [7]增加两组2G的日志文件 2)首先查看当前联机日志文件状态 从数据库的逻辑层面查看 export ORACLE_SID=rac1 sqlplus /nolog

android studio-如何将Android Studio 中的项目打包成jar文件,求方法

问题描述 如何将Android Studio 中的项目打包成jar文件,求方法 如题,求能用的方法,试了好多百度的方法,不怎么好用啊,越详细越好 解决方案 AS 生成Jar包 在Gradle中添加任务声明 def makeJar(String target, String classDir) { exec { executable "jar" //调用jar args "cvf", target args "-C", classDir args