数据库配置修改Word格式文档下载.docx
《数据库配置修改Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《数据库配置修改Word格式文档下载.docx(16页珍藏版)》请在冰豆网上搜索。
从Oracle10gRAC版本开始,新增加CRS组件。
CRS对于RAC使用是必不可少,因此crs的稳定对于RAC数据库的正常运行至关重要。
在健康检查中会检查CRS、CSS和EVM的LOG信息。
.
无
检查CRS其他相关进程日志,没有发现问题。
1.6RDBMS运行日志和跟踪文件
Oracle数据库进程生成跟踪文件来记录错误或冲突,这些跟踪文件可以用来进一步分析问题。
数据库参数'
max_dump_file_size'
限制了这些跟踪文件的大小(以操作系统块的大小为单位)。
应当有足够的硬盘空间来容纳最大值的设置,否则的话应当修改上述参数的设置。
如果参数'
设得太大,会超过硬盘空间容量;
如果设得太小,又不能容纳足够的出错信息供oracle支持服务部门分析问题。
此参数可以在数据库会话级设置,这样可以有选择性地设置较大值。
注意每天监控运行日志文件中的出错信息,以便于在问题还是隐患的时候及时发现并解决掉。
建议每月初将当前的alert.log重新命名以作备份,同时也可以避免alert.log文件变得太大不易管理。
在数据库:
实例的运行日志文件发现的最近一月内的主要错误如下所示:
1.7控制文件
每个数据库至少有一个控制文件(默认是3个)。
控制文件记录了数据库的物理结构及同步信息。
大小一般在1MB到5MB之间,为二进制文件,但它是数据库中关键性的文件,它对数据库的成功启动和正常运行都是至关重要的,因为它存储了在其他地方无法获取的关键信息,这些信息包括:
<
1>
数据库名称
2>
数据文件和重做日志文件的名称,位置和大小
3>
发生洗盘故障或用户错误时,用于恢复数据库的信息
4>
注意:
每个数据库必须,而且只需要有一个控制文件
5>
在装载(mount)数据库时,Oracle将读取控制文件中的信息,以便判断数据库的状态,获取数据库的物理结构信息的物理文件的使用权。
因此,控制文件对于数据库的成功卸载,以及其后的打开显得至关重要。
6>
只有控制文件时正常的,才能装载,打开数据库,在数据库运行过程中,每当出现数据库检查点(checkpoint)或修改数据库结构之后,Oracle就会修改控制文件的内容。
DBA可以通过OEM工具修改控制文件中的部分内容,但DBA和用户都不应该人为地修改控制文件中的内容,否则会破坏控制文件。
Controlfilelocation
控制文件路径如下:
Selectname,is_recovery_dest_file,block_size,file_size_blksfromv$controlfile;
IS_RECOVERY_DEST_FILE,指明相关的文件是否在恢复区内。
select
sum(block_size*file_size_blks)/1024/1024
fromv$controlfile#控制文件大小
IS_RECOVERY_DEST_FILE
BLOCK_SIZE
FILE_SIZE_BLKS
+DISK1/taxshare/controlfile01.log
NO
16384
430
+DISK1/taxshare/controlfile02.log
+DISK1/taxshare/controlfile03.log
目前所有控制文件的文件存储在RAID的磁盘阵列上面,提供了硬件级别的保护。
1.8Redolog文件
对于恢复操作,最为关键的结构是在线RedoLog。
在线RedoLog一般由两个或两个以上预先分配的存储数据库变化的文件组成。
为了防止例程故障,每个数据库的实例都有相关的在线RedoLog。
每个数据库至少有两个RedoLog组,每组至少有一个日志文件。
Oracle的多重在线RedoLog文件可以确保在线日志文件的安全。
对于多重在线RedoLog文件,LGWR同时将相同的RedoLog信息写入不同的RedoLog文件中,从而减少单个文件丢失的损失。
当Oracle无法访问一个RedoLog文件时,这个文件状态变为INVALID。
当Oracle推测一个RedoLog文件不完整或者不正确时,它的状态变为STALE。
当一个STALE的文件被重用时,即其所在日志文件组活动时,此文件也能够使用。
在线RedoLog文件减少了数据库数据丢失的损失,比如当发生例程故障时,没有被写入数据文件的数据可以从在线RedoLog文件中恢复。
v$log是用来反映redologfile的数据字典
SELECTgroup#,members,thread#,sequence#,bytes,status,archivedFROMv$log;
#得到Oracle数据库的重做日志配置信息selectgroup#,thread#,sequence#,archived,statusfromv$log;
select*fromv$logfile;
#获取oracle的每个重做日志(成员)文件所存放的具体位置
status--有四种状态,UNUSED(未使用的),CURRENT(当前),ACTIVE(清除),CLEARING(不活跃)
V$LOG:
STATUS指的是GROUP的状态
V$LOGFILE:
STATUS指的是member的状态
INVALID:
不能使用的member,可能损坏了(另外,刚加入到redologgroup的日志文件在被使用之前也是这个状态)
group#:
Anonlineredologgroupisagroupof(possiblyone)onlineredologfiles.
members:
Eachofthesefilesinthegroupsiscalledanonlineredologmemberofthegroup.
Thread#线程号
thread=theinstance#inRAC
athreadmusthave>
=2groups
agroupmusthave>
=1members
如果不是rac系统,你不用去管thread,thread就是1.
对于rac系统,每个instance必须有自己的redologgroup,每个instance的全体group组叫做一个thread,
就是说,thread数目=instance数目
对于rac系统,每个instance至少要有2个group,每个group最少有1个member。
thread>
group>
member
Group#
Thread#
Members
Archived
Status
Bytes/1024/1024
1
Y
INACTIVE
2000
2
CURRENT
3
4
1.9归档Redolog文件
Oracle允许将写满的在线RedoLog文件存放在一个或多个脱机位置,即归档RedoLog。
在线日志文件通过归档写入归档日志文件。
后台进程ARCn自动进行归档操作。
您能通过归档日志进行:
在线备份
基于时间的恢复
Oracle数据库有联机重做日志,这个日志是记录对数据库所做的修改,比如插入,删除,更新数据等,对这些操作都会记录在联机重做日志里。
一般数据库至少要有2个联机重做日志组。
当一个联机重做日志组被写满的时候,就会发生日志切换,这时联机重做日志组2成为当前使用的日志,当联机重做日志组2写满的时候,又会发生日志切换,去写联机重做日志组1,就这样反复进行。
如果数据库处于非归档模式,联机日志在切换时就会丢弃.而在归档模式下,当发生日志切换的时候,被切换的日志会进行归档。
比如,当前在使用联机重做日志1,当1写满的时候,发生日志切换,开始写联机重做日志2,这时联机重做日志1的内容会被拷贝到另外一个指定的目录下。
这个目录叫做归档目录,拷贝的文件叫归档重做日志。
数据库使用归档方式运行时才可以进行灾难性恢复。
1.归档日志模式和非归档日志模式的区别
非归档模式只能做冷备份,并且恢复时只能做完全备份.最近一次完全备份到系统出错期间的数据不能恢复.
归档模式可以做热备份,并且可以做增量备份,可以做部分恢复.
用ARCHIVELOGLIST可以查看期模式状态时归档模式还是非归档模式
ArchivedRedoLogSettings
1.selectname,log_modefromv$database;
#查询归档模式
2.改变非归档模式到归档模式:
1)SQL>
SHUTDOWN
NORMAL/IMMEDIATE;
先down下数据
2)SQL>
START
MOUNT;
启动数据库实例到mount状态,但不要打开
3)SQL>
ALTER
DATABASE
ARCHIVELOG;
设置数据库为归档日志模式
4)SQL>
OPEN;
打开数据库
5)SQL>
archive
log
list;
确认数据库现在处于归档日志模式
6)SQL>
all;
将这个时间点的redo
logs归档
3.SQL>
alter
tablespace
users
begin
bacup;
#做一次完全备份,因为非归档日志模式下产生的备份日志对于归档模式已经不可用了.这一步非非常重要!
4.如果停止归档模式就用
alterdatabasenoarchivelog
NOARCHIVELOG;
5.启用自动归档:
LOG_ARCHIVE_START=TRUE
启用手动归档:
LOG_ARCHIVE_START=FALSE
归档模式下,日志文件组不允许被覆盖(重写),当日志文件写满之后,如果没有进行手动归档,那么系统将挂起,知道归档完成为止.
这时只能读而不能写.
运行过程中关闭和重启归档日志进程
SQL>
ARCHIVELOGSTOP
ARCHIVELOGSTART
6..获取归档日志信息
V$ARCHVIED_LOG
V$ARCHVIE_DEST
V$LOG_HISTORY
V$DATABASE
V$ARCHIVE_PROCESSES
ARCHIVELOGLIST;
Showparameterarchive
NAME
TYPE
VALUE
archive_lag_target
integer
log_archive_config
string
log_archive_dest
log_archive_dest_1
log_archive_dest_10
log_archive_dest_2
log_archive_dest_3
log_archive_dest_4
log_archive_dest_5
log_archive_dest_6
log_archive_dest_7
log_archive_dest_8
log_archive_dest_9
log_archive_dest_state_1
enable
log_archive_dest_state_10
log_archive_dest_state_2
log_archive_dest_state_3
log_archive_dest_state_4
log_archive_dest_state_5
log_archive_dest_state_6
log_archive_dest_state_7
log_archive_dest_state_8
log_archive_dest_state_9
log_archive_duplex_dest
log_archive_format
ARC%S_%R.%T
log_archive_local_first
boolean
TRUE
log_archive_max_processes
log_archive_min_succeed_dest
log_archive_start
FALSE
log_archive_trace
remote_archive_enable
true
standby_archive_dest
%ORACLE_HOME%\RDBMS
这里能够很好地在运行环境中使用归档RedoLog。
这样就能够进行基于时间的恢复。
监控归档日志文件所暂时存放的磁盘空间,根据实际情况调整归档日志文件备份到磁带的频度。
1.10数据文件
数据文件是数据库分配的物理文件。
在Oracle数据库中,一个表空间可以包含一个或多个物理文件。
而一个数据文件则只能关联一个表空间和一个数据库。
Oracle通过分配一定的磁盘空间以及所需要的文件头空间,为每个表空间创建一个数据文件。
Datafilelocations
检测数据文件的位置。
当数据文件增长过度,数据库中必须添加数据文件。
应该避免“哪里有空间,哪里建文件”的错误方法,因为这样会增加备份策略和文件维护的复杂性。
下面列出部分数据文件的位置。
selecttablespace_name,autoextensible,online_statusfromdba_data_files
select
b.bytes/1024/1024D_Size,
(b.bytes-sum(nvl(a.bytes,0)))/1024/1024
Used,
substr((b.bytes-sum(nvl(a.bytes,0)))/(b.bytes)*100,1,5)
Used_prec
fromdba_free_spacea,dba_data_filesb
wherea.file_id=b.file_id
groupbyb.tablespace_name,b.file_name,b.bytes
orderbyb.tablespace_name;
#查询表空间大小,已使用情况,和使用率
selectd.TS#,d.NAME,c.file_numfromv$tablespaced,
(selectb.TS#ts_id,count(a.TS#)file_numfromv$tablespaceb,v$datafilea
wherea.TS#=b.TS#
groupbyb.TS#)c
whered.TS#=c.ts_id#查询文件数量
DBA_DATA_FILES
DBA_DATA_FILESdescribesdatabasefiles.
Column
Datatype
NULL
Description
FILE_NAME
VARCHAR2(513)
Nameofthedatabasefile
FILE_ID
NUMBER
NOTNULL
Fileidentifiernumberofthedatabasefile
TABLESPACE_NAME
VARCHAR2(30)
Nameofthetablespacetowhichthefilebelongs
BYTES
Sizeofthefileinbytes
BLOCKS
SizeofthefileinOracleblocks
STATUS
VARCHAR2(9)
Filestatus:
AVAILABLEorINVALID(INVALIDmeansthatthefilenumberisnotinuse,forexample,afileinatablespacethatwasdropped)
RELATIVE_FNO
Relativefilenumber
AUTOEXTENSIBLE
VARCHAR2(3)
Autoextensibleindicator
MAXBYTES
Maximumfilesizeinbytes
MAXBLOCKS
Maximumfilesizeinblocks
INCREMENT_BY
Numberoftablespaceblocksusedasautoextensionincrement.BlocksizeiscontainedintheBLOCK_SIZEcolumnoftheDBA_TABLESPACESview.
USER_BYTES
Thesizeofthefileavailableforuserdata.TheactualsizeofthefileminustheUSER_BYTESvalueisusedtostorefilerelatedmetadata.
USER_BLOCKS
Numberofblockswhichcanbeusedbythedata
ONLINE_STATUS
VARCHAR2(7)
Onlinestatusofthefile:
∙SYSOFF
∙SYSTEM
∙OFFLINE
∙ONLINE
∙RECOVER
Online_status
tablespace_name
File_Num
D_Size(MB)
Used(MB)
Used(%)
Autoextensible
SYSTEM
SYSTEM1
800
737.3
94
ONLINE
USERS1
1000
166
SYSAUX
8000
118.4
15
WEBSITE
5
30000
452.1
SOCIETYDATA
1400
1.04
76
TEMP1
6
2400
UNDOTBS2
75
UNDOTBS1
81
从
目前看来,数据文件存放位置都基本准确。
Autoextendcapabilities
通过自动扩展命令进行数据文件的自动扩展。
假定数据文件无法分配所需空间,那么它将提高数据文件的大小以获得更多空间。
1.11表空间
每个数据库由一个或多个逻辑存储单位,即表空间,所组成。
而表空间则由逻辑存储单位段所组成。
而段将被分为多个片。
TablespaceManagement
以下是关于数据库表空间管理的信息。
selectTABLESPACE_NAME,STATUS,EXTENT_MANAGEMENT,ALLOCATION_TYPE,SEGMENT_SPACE_MANAGEMENTfromdba_tablespaces;
substr((b.bytes-sum(