026.笔记:10G DG-基础知识2
1.逻辑备用数据库的管理 SQL Apply引擎包括下列几个进程: READER进程在重做日志到达备用数据库之后,负责读出日志并将其放入共享池中名为LCR缓存的内存结构里 PREPARER进程将LCR缓存中的重做日志转换成逻辑变更记录(LCR)并明确逻辑变更记录之间的关系。 BUILDER进程将每一条逻辑变更记录创建成为完整的事务 ANALYZER进程获取BUILDER进程创建的事务并分析事务之间的相关依赖性 COORDINATOR进程监测事务间的依赖性并通过应用子进程正确地排序这些事务的应用 APPLY进程接收来自COORDIANTOR进程的事务,并从物理上对数据库表应用具体
025.笔记:10G DG-基础知识1
1.日志传输服务 Data Guard的核心是日志传输服务。它需要在数据保护和可用性与性能影响方面进行权衡,以达到两者的平衡。 1.1 定义日志传输服务的目标文件 alter system set LOG_ARCHIVE_DEST_2='SERVICE=Nashbille_hasun1' scope=both; 属性LOCATION和SERVICE确定重做日志是磁盘上的本地传输,还是传输到远程的主机上去。 --我们可以推迟远程目标文件的执行,来停止归档日志向远程主机的传输: alter system set LOG_ARCHIVE_DEST_STATE_2=defer scope=both; (1)ARC属性(默认) 在日志切换边界上ARC进程将进行本地的或
024.笔记-10G DG-创建逻辑备用数据库
4 Creating a Logical Standby Database4.1 Prerequisite Conditions for Creating a Logical Standby Database 4.1.1 Determine Support for Data Types and Storage Attributes for Tables 4.1.2 Ensure Table Rows in the Primary Database Can Be Uniquely Identified 4.2 Step-by-Step Instructions for Creating a Logical Standby Database 4.2.1 Create a Physical Standby Database 4.2.2 Stop Redo Apply on the Physical Standby Database SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL; 4.2.3 P
023.笔记:10G DG-创建物理备用数据库
1.创建物理备用数据库相关命名host databaseType DB_UNIQUE_NAME TNS_Aliasdb1 Primary ora10g1 ora10g1_db1dg1 Physical Standby orastdb standby_dg1--注意:DB_UNIQUE_NAME不能太长。DB_NAME不能超过8位,在DG环境中,主备库的DB_NAME相同,DB_UNIQUE_NAME不同。第一步:启用归档模式alter system set log_archive_dest_1='location=/u01/ora10g/archivelog' scope=spfile;shutdown immediatestartup mountalter database archivelog;--alter database flashback on;alter database open;第二步:创建密码文件由于新日志的传输安全和认
021.笔记:10G RAC-管理RAC环境中的数据库
1.RAC的本质 1.1实例命名 数据库名总是相同的,因为它与物理数据库本身相关。另一方面,实例名与每个节点上的内存相关,因此实例名在各节点上必须是唯一的。 1.2RAC环境中的spfile alter system set db_cache_size=500m scope=spfile sid='ractest1'; --sid='*' 1.3RAC特定参数 instance_number和thread参数是特别用于RAC环境的参数代表,每个实例必须拥用与之相关的唯一值。 CLUSTER_DATABASE:大多数情况下,所有实例都必须将此值设置为TRUE。 当进行升级或打补丁的时候或“修改归档模式或闪回模式”时,除了
020.笔记:10G RAC-添加、移除节点
1.移除节点 第一步:使用DBCA移除实例。在剩余节点上运行 dbca 【Instance Management】【Delete Instance】 如果实例不可用,或者DBCA无法移除所有组件,那么可能需要使用srvctl命令手动从OCR中删除实例。例如: srvctl remove instance -d ractest -i ractest2 在归档日志模式下DBCA删除重做日志可能会失败:ORA-350/ORA-312,单击Ignore让DBCA继续,DBCA结束后运行: alter system archive log all; alter database drop logfile group 3; 手动移除ASM:srvctl remove asm -n node2 --先停asm实例
019.笔记:在虚拟机部署10G RAC
第一步:准备环境 (一)VMware server 环境 1:安装VMWARE server2.0 VMware的remote console需要一个非空的DNS,如果DNS是空的,REMOTE CONSOLE会频繁报错 2:用VMWARE创建共享磁盘 (1)为voting disk和ocr各创建100MB的单独磁盘 (2)再创建三块保存数据的1GB磁盘 (3)创建磁盘的选项 选中Allocate all disk space now 在Virtual device node中选择一个新的scsi总线(比如虚拟机默认磁盘SCSI 0:x,则新添加的硬盘可以使用1:x) 选中Persistent (4)修改虚拟机配置 在配置linux系统之前,首
018.笔记:虚拟机的网络连接模式
bridged桥连模式:虚拟机可以与主机所在的局域网通信nat(网络地址转换模式):虚拟机利用主机可以访问互联网,但是不能访问主机所在的局域网host-only:虚拟机之间可以通信,主机与虚拟机可以通信。但虚拟机不能与外界通信。虚拟机NETWORKS列表中的:VMnet0/VMnet1/VMnet8是三个虑拟交换机vmnet0:bridgedVMnet1:host-onlyVMnet8:nat本机上会创建对应VMnet1/VMnet8的适配器,VMnet0会与物理网卡桥接问题:主机与虚拟机PING不通?虚拟机网卡类型是bridged,主机没有联网。解决:如果本机没有联网,虚拟机适配器选择HOST-ONLY,这样主机与虚拟机是
17.笔记:为可用性调整数据库
3.1智能基础结构 AWR、ADDM、ASH(active session history ,ASH活动会话历史,用以追踪会话在在等待的所有事件),这些技术合起来被称为智能基础结构 MMON后台进程 MMON后台进程是Oracle Database 10g中引入的一个新的后台进程,它负责对数据库内部运行情况进行自动监视。MMON还负责在每次AWR 运行完之后启动自动数据库诊断监控器,用来检查报表中指出的瓶颈或问题。此外,MMON每隔一分钟检测一次ALERT_QUE,它是sys用户拥有 的一个队列,查找所有新添加的信息和警告。MMON既可以自动地执行纠正动作,也可通过ALERT_QUE发送一个警
16.笔记:RDBMS关于可用性的特性
1.企业管理器 Oracle数据库控制台(Oracle Database Control) Oracle网格控制台 EM网格控制台的安装与数据库安装是分离的,要求有一个仓库数据库,一个庞大的内存区,并且需要单独定价和颁发许可。 如果您想使用实时应用集群(RAC)和Data Guard管理的GUI,则需要使用EM网格控制台。 2.数据库的动态配置 ORALCE DATABASE 10G发布了218个参数,还有若干未发布的参数(以下划线开头)。 仅针对会话的参数: HASH_AREA_SIZE OLAP_PAGE_POOL_SIZE SORT_AREA_RETAINED_SIZE SORT_AREA_SIZE tracefile_identifier
15.笔记:管理Oracle数据库资源
--实用功能:数据库停顿--------------------- 详见7.1 alter system quiesce restricted; alter system unquiesce;--取消数据库停顿-------------------------------------------Oracle的Resource Manager将大型机样式的资源管理性能引入支持Oracle的所有平台,也就是说:无论数据库具有怎样的整体工作负荷,DBA都能够保证特定的数据库用户组始终可以接收特定的服务级别。1.资源管理需求 设置不同用户组的使用资源的不同级别 也可以避免一个糟糕的查询可能导致数据库崩溃 2.Resource Manager的体系结构 用户被置入Resource Ma
14.笔记:监视与管理内存
概述:ORACLE实例的存储结构:(1)SYSTEM GLOBAL AREA,简写为SGA:是供后台进程与服务器进程共享使用的;(2)PROGRAM GLOBAL AREA,简写为PGA:各个会话私有的内存区域如果启用了SGA和PGA的自动管理,那么应当能够确保所有可用的内存被最佳地使用,同时保证服务器根本不需要交换。1.系统全局区SGA从操作系统的观点出发,SGA是共享内存。共享内存的实现根据操作系统的不同而变化。例如:SOLARIS通过/etc/system文件设置共享内存,并且任何变化都需要在重启后才起作用;但是在LINUX系统中,我们可以使用sysctl实用程序动态地配置共享内存(
13.笔记:监视与管理存储结构
1.联机与归档重做日志文件的存储 重做日志具有双重目的:对于在实例失败事件中防止数据库讹误来说,联机日志文件是必不可少的; 对于在介质失败事件中的恢复来说,归档日志文件是必需的。 1.1 磁盘I/0与联机重做日志文件 提交过程表明:在提交时,LGWR进程会将内存中的重做数据写至磁盘上的联机重做日志文件。 LGWR进程决定性能的方面为:某位用户执行提交语句时,指定会话在LGWR进程将日志缓冲区的内容转储至磁盘之前将被挂起。 如果联机日志文件组的两个成员位于相同的物理磁盘设备上,那么只能执行顺序的写
012.笔记:用于调整OracleDatabase10g的工具
1.顾问程序的方法 顾问程序能够帮助确定性能的原因并给出建议的解决方案 事件类视图:V$SYSTEM_WAIT_CLASS 所有性能调整都基于统计量。实例参数STATISTICS_LEVEL控制了收集统计量的详细级别。2.ADDM 在默认情况下,快照由MMON进程收集,并且每隔一小时被存储至AWR。因些,ADDM默认每隔一小时运行一次。 修改快照默认值的方法: (1)Database Control (2)execute dbms_workload_repository.modify_snapshot_settings(retention=>20160,interval=>20);--保留两周,20分钟收集一次 execute dbms_workload_repository.m
011.笔记:检测与恢复数据库的讹误
1.块讹误及其原因 块讹误具有下列两种方式:介质讹误或逻辑讹误(也称为软件讹误) 介质讹误是内容没有任何意义的数据块。 逻辑讹误是ORACLE格式化正确,但是其内部内容不一致的数据块2.与讹误相关的参数 DB_BLOCK_CHECKSUM:默认值TRUE DB_BLOCK_CHECKING:默认值FALSE 为论怎样设置上述参数,始终都会为SYSTEM表空间启用校验和计算以及数据块检查 3.检测块讹误 3.1 ORA-01578说明存在讹误数据块。 告警日志中会有详细信息。 Corrupt Block Found: RFN:文件号 BLK:块号 TSNAME:表空间名 TSN:表空间编
010.笔记:恢复用户错误
1.FLASHBACK DROP (1)为了尽量避免 连接错误模式或登录错误实例删除正确的表,可以编辑$ORACLE_HOME/sqlplus/admin,增加一条设置 set sqlprompt "_user'@'_connect_identifier> " (2)FLASHBACKUP DROP方法只应用于表,但是除了外键约束之外的所有关联对象也将被恢复 (3)ORACLE10G删除表,实际是重命名 (4)DROP后的表在回收站能查到,实际上这些表使用的还是他们原来占用的表空间。RENAME不会改变对象的物理位置。 (5)使用Flashback Drop drop table <table_name> purge; flashback table <tab
009.笔记:FLASHBACK_DATABASE
可用的闪回方法有三种:FLASH DATABASE/FLASH QUERY/FLASH DROPFLASH DATABASE 依赖闪回缓冲区、闪回日志FLASH QUERY 依赖撤销段FLASH DROP 1.配置FLASH DATABASE(1)select log_mode,flashback_on from v$database;(2)alter system set db_recovery_file_dest='/home/oracle/db/flash_recovery_area'; alter system set db_recovery_file_dest_size=8G; alter system set db_flash_retention_target=240;--闪回保留目标,单位是分钟,默认保留目标是1天。(3)shutdown immediate; startup mount; alter database flashback on; alte
008.笔记:数据库的不完全恢复
delete obsolete1.完全恢复练习 create tablespace rectest datafile '/home/oracle/rectest.dbf' size 2m; create table t_recover (c1 varchar2(1)) tablespace rectest; backup database; mv /home/oracle/rectest.dbf /home/oracle/rectest2.dbf --linux4.8:使用RM,如果不重启DB,不报错 insert into t_recover values('a'); commit; run { sql "alter tablespace rectest offline immediate"; restore tablespace rectest; recover tablespace rectest delete archivelog; sql "alter tablespace rectest onlin"
007.笔记:恢复非关键的损失
一、恢复受损的临时表空间 1.临时数据通常具有两种形式:排序数据与全局临时表 排序数据与全局临时表数据首先会占用空闲内存,如果内存已用完,他们会将数据写入临时表空间。 2.临时空间的配置 v$tablespace v$tempfile dba_temp_files database_properties--数据库的临时表空间 2.DBWn进程以及其他后台进程并不完成对临时文件的写操作,这类操作由为需要一些临时表空间的会话提供服务的服务器进程完成。 因此,即使某个临时文件在数据库启动时不可用,数据库仍然能够被打开。不过,DBWn进程会在告警日志中写下一条消息。 3
006.su与 su - ,su - root的区别
在RHEL4.8测试发现su:切换至root用户,使用原用户的环境配置文件su -或su - root:切换至root用户,使用root的环境配置文件[@more@]