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 ] ('','',……) size , [group ] ……
添加成員
alter database add logfile member '' to group ,'' ……
刪除組
alter database drop logfile group , group……
active狀態和current狀態不可刪
刪除成員
alter database drop logfile member '','',……;
重命名成員(可以做日志移動等)
ho cp
alter database rename file '' tp '';
歸檔模式下 current狀態不可重命名;非歸檔模式下? 都可以改
【alter database noarchivelog|archivelog;】
異常處理
啟動時日志不一致問題
alter database clear logfile group ;
active狀態和current狀態不可用
alter database clear unarchived logfile group ;
日志文件丟失
alter database clear logfile group ;
歸檔模式下不能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日常维护中管理用户以及重做日志文件的方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php编程习惯,PHP 编程的 5个良好
- 下一篇: oracle查看被锁的行,查找被锁的表到