10G安装DataGuard
最后更新时间:2013年8月4日,星期日
★ oracle 10G安装环境
数据库软件安装环境不详细描述,网上到处有这方面资料,下面只简单描述下。
也可参考官方文档:
http://docs.oracle.com/cd/B19306_01/install.102/b15667/pre_install.htm
yum install libXp
oracle用户.bash_profile文件增加
export ORACLE_BASE=/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=primary
export ORACLE_TERM=xterm
export PATH=/usr/sbin:$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
/etc/security/limits.conf中添加以下内容
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
/etc/sysctl.conf 增加
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 262144
/etc/pam.d/login 增加:
session required pam_limits.so
安装第二台oracle,只安装数据库软件,创建监听,不建库;
★ dg配置
准备工作:
1. Enabel Forced Logging
SQL> alter database force logging;
select force_logging from v$database;
2. MOUNT状态下开归档
SQL> alter database archivelog;
SQL> archive log list;
3. 创建 Password File
默认有这文件,直接传到dg2主机目录:$ORACLE_HOME/dbs ,修改文件名为 orapwstandby
4. 配置tnsnames.ora
DG1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = dg1.bugbeta.cn)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = primary.bugbeta.cn)
)
)
DG2=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = dg2.bugbeta.cn)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = standby.bugbeta.cn)
)
)
★ 创建standby数据库
DG1:
先生成pfile,修改好,再关实例,使用pfile创建spfile;
create pfile='/tmp/a.pfile' from spfile;
修改pfile:
*.db_unique_name=primary
*.log_archive_config='dg_config=(primary,standby)' --这里写的是db_unique_name
*.log_archive_dest_1='LOCATION=/oracle/data/primary/arch valid_for=(all_logfiles,all_roles) db_unique_name=primary'
*.log_archive_dest_2='service=DG2 arch valid_for=(online_logfiles,primary_role) db_unique_name=standby' --这里service写的是tns中配置
--以下为作为standby角色的配置,primary与standby角色互换则需在primary也配置
*.fal_server=DG2 --tns中配置
*.fal_client=DG1 --tns中配置
*.standby_file_management=auto
再使用上述修改好的pfile创建spfile;
创建standby用的control文件
SQL> alter database create standby controlfile as '/home/oracle/standby.ctl';
select FILE_NAME,TABLESPACE_NAME from dba_data_files;
primary>alter database begin backup;
primary>host scp /oracle/data/orcl/*.dbf dg2:/oracle/data/orcl/
primary>alter database end backup;
DG2:
将控制文件,密码文件,数据文件都复制到standby对应目录;
mkdir -p /oracle/data/standby/arch
echo "db_name=orcl" >/oracle/product/10.2.0/db_1/dbs/initstandby.ora
启动数据库到mount(使用修改过的pfile启动)
export ORACLE_SID=standby
SQL> startup pfile='/home/oracle/a.pfile' mount;
SQL> create spfile from pfile='/home/oracle/a.pfile';
SQL> alter database recover managed standby database disconnect from session; --应用日志;
SQL> alter database recover managed standby database using current logfile disconnect from session; --开启实时应用日志
--以下仅为作查询服务前操作
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL; --暂停应用日志
alter database open read only; --只读模式开启,可做查询操作;
★ 检查DG物理standby工作是否正常
1. 检查归档日志(DG1,DG2)
col name for a50
set linesize 200
SQL> SELECT NAME,SEQUENCE#, FIRST_TIME, NEXT_TIME FROM V$ARCHIVED_LOG ORDER BY SEQUENCE# desc;
2. 强制在DG1上切换日志
DG1> alter system switch logfile;
DG1>select name,SEQUENCE#,STANDBY_DEST,ARCHIVED,APPLIED,DELETED,STATUS,fal from v$archived_log order by sequence#;
检查日志传输到DG2且是否已应用:
DG2>select name,SEQUENCE#,STANDBY_DEST,ARCHIVED,APPLIED,DELETED,STATUS,fal from v$archived_log order by sequence#;
★ 常用视图
最最常用的两个视图:
Select dest_name,status,error from v$archive_dest; --检查DG配置spfile是否正确
select name,SEQUENCE#,STANDBY_DEST,ARCHIVED,APPLIED,DELETED,STATUS,fal from v$archived_log; --检查standby日志应用情况
SELECT DESTINATION, STATUS, ARCHIVED_THREAD#, ARCHIVED_SEQ# FROM V$ARCHIVE_DEST_STATUS; --检查最近归档在各destination状态
Select dest_name,status,error from v$archive_dest; --可检查LOG_ARCHIVE_DEST_2是否设置正确;
select name,SEQUENCE#,STANDBY_DEST,ARCHIVED,APPLIED,DELETED,STATUS,fal from v$archived_log order by sequence#; --检查日志状态 物理standby
SELECT SEQUENCE#,FIRST_CHANGE#,NEXT_CHANGE#,TIMESTAMP,APPLIED FROM DBA_LOGSTDBY_LOG; --检查日志应用状态 逻辑standby
select THREAD#,SEQUENCE#,STATUS from v$managed_standby;
select THREAD# ,SEQUENCE#,STATUS,ARCHIVED from v$standby_log;
select FACILITY,SEVERITY,MESSAGE from v$dataguard_status;
SELECT EVENT_TIME,STATUS,EVENT FROM DBA_LOGSTDBY_EVENTS ORDER BY EVENT_TIMESTAMP;
select * from V$LOGSTDBY_STATE; --逻辑Standby是否启用实时应用;
SELECT * FROM V$ARCHIVE_GAP; --查看GAP
参考
http://docs.oracle.com/cd/B19306_01/server.102/b14239/create_ps.htm#i68626 创建物理standby
http://docs.oracle.com/cd/B28359_01/backup.111/b28273/rcmsubcl010.htm %s之类格式说明
http://docs.oracle.com/cd/B19306_01/server.102/b14239/log_transport.htm#i1008089 redo传输检查
10G安装DataGuard的更多相关文章
- Oracle 10g安装64位图解流程
1. 安装准备阶段 1.1 安装Oracle环境 本例使用X-Manager来实现与Linux系统的连接,本例使用的所有命令和操作都是在X-Manager下进行.X-Manager安装完成后的配置方法 ...
- Oracle 10G 安装文档
Oracle 10G安装指导 1. 解压文件10201_database_win32.zip,并双击解压目录下的setup.exe,出现安装界面,如下: 2. 输入口令和确认口令,如:password ...
- Solaris 10上Oracle 10g安装步骤图解
文章目录 1. 说明 2. 查看相关包 3. 添加用户和组 4. 设置oracle环境变量 5. 创建Oracle软件目录 6. 修改OS参数 7. 上传Oracle软件包并解压 8. 开始安装 9. ...
- Oracle 10g安装教程
首先下载安装文件,打开后文件结构如图所示: 安装之前请关闭Windows防火墙并断开网络. xp系统下直接双击运行(本经验以XP系统安装为例进行讲述). 如果是在win7上安装,如图:在setup文件 ...
- Oracle 10G 安装后 不能卸载, 不能打开Web管理....
1. 不能卸载. 点击这个卸载. 提示: 解决方法: 右键卸载, 设置兼容性为XP. 就可以使用了. 2. oracle10g登录em后,提示"java.lang.Except ...
- linux oracle 10g 安装时 .bash_profile的设置
export ORACLE_BASE=/home/oracle/oracle10g export ORACLE_SID=ccpbs export ORACLE_HOME=$ORACLE_BASE/pr ...
- Oracle Database 10g安装
前言 oracle_10g_32位的安装包 链接:https://pan.baidu.com/s/1v1ZWYSjWLzKo3GnDuV5nrg 密码:88yd PLSQL Developer 32位 ...
- Oracle 10g安装报错记录
环境描述linux 5.6 安装Oracle 10.2.0.1.0 DBCA问题 1)DBCA图形化界面,出现乱码 测试环境,操作系统中文字符编码导致 export LANG=C 2)DBCA图形化点 ...
- 24. Oracle 10g安装检测中DHCP报错
编辑hosts文件: #vi /etc/hosts 添加虚拟机ip 主机名,原来的保持不变,如: 192.168.100.12 localhost.localdomain
随机推荐
- Java的TreeMap,C++的lower_bound,合并间隔
https://leetcode.com/problems/data-stream-as-disjoint-intervals/?tab=Description 这道题目是合并间隔的经典题目. htt ...
- 泛泰 A850 4.1.2 刷第三方专用Recovery合集
下载 http://download.csdn.net/detail/benjaminwan/7406089 专用于刷基于AOSP4.1.2的乐蛙和MIUIV5 由于本人制作的第三方ROM,为了通刷, ...
- MySQl Study学习之--MySQl二进制日志管理
MySQl Study学习之--MySQl二进制日志管理 MySQL二进制日志(Binary Log) a.它包括的内容及作用例如以下: 包括了全部更新了数据或者已经潜在更新了数据(比方没 ...
- BZOJ4259: 残缺的字符串 & BZOJ4503: 两个串
[传送门:BZOJ4259&BZOJ4503] 简要题意: 给出两个字符串,第一个串长度为m,第二个串长度为n,字符串中如果有*字符,则代表当前位置可以匹配任何字符 求出第一个字符串在第二个字 ...
- php中file_get_contents如何读取大容量文件
php中file_get_contents如何读取大容量文件 一.总结 一句话总结:使用file_get_contents()进行分段读取,file_get_contents()函数可以分段读取 1. ...
- Wow C++11
什么是C++11? 一句话C++11是最新的C++标准,在2011年发布,所以叫C++11.在新的标准出现前,我们一直在用的是C++98,可想而知这份标准是1998年发布的,之后再2003年最过小的修 ...
- append生成新变量的时候,没有如预期(It's a feature,not a bug?)
这是我在写一个项目中,遇到的一个golang的feature,如代码所示,我在for循环里,每次用append生成一个新的数组,(当然我以前一直以为可以这样,直到我在stackoverflow上发现不 ...
- css常用的阴影
一.box-shadow: 0 2px 15px 0 rgba(0,0,0,.15)!important 二. box-shadow: 0 2px 6px 0 rgba(0,0,0,.4); 三. . ...
- HDU 5214 Movie【贪心】
题意:给出n,l[1],r[1],a,b,c,d 其中 l[i]=l[i-1]*a+b,r[i]=r[i-1]*c+d; 问能否从这n个区间中选出不相交不重叠的三个区间 看的题解 先考虑最左边的区间, ...
- Linux下安装使用MySQL
网上找那些安装教程比较多的版本,版本只要不是太旧就行. 下载mysql 5.6.28 通用版64位二进制版,二进制版相当于windows的安装包,可以直接安装,如果是源码版,还需要编译后再进行安装. ...