SLES 10安装Oracle10gR2笔记
一、 数据库安装
. 安装C/C++ Compiler
gcc --version验证是否安装
. 验证Service Pack版本
SPident –v
. 修改/etc/hosts
#127.0.0.1 localhost
192.168.0.123 localhost
. 安装先决程序包
可以在安装操作系统是选择Oracle Base Server或者安装如下程序包:
#rpm -ivh orarun-1.9-21.2.x86_64.rpm
. 设置oracle用户
修改/etc/passwd的oracle用户的/bin/false为/bin/bash,或先删除用户重建。并设置oracle用户密码:
# groupadd oinstall
# groupadd dba
# useradd oracle -g oinstall -G dba
# passwd oracle . 设置oracle用户环境变量(/etc/profile.d/oracle.sh)
PATH=$PATH:$HOME/bin
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/lib # added for install oracle10g
export ORACLE_BASE=$HOME
export ORACLE_HOME=$ORACLE_BASE/product/10.2/db_1
export ORACLE_SID=testdb # deleted after install oracle10g
export TNS_ADMIN=$ORACLE_HOME/network/admin
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK" export PATH=$PATH:$ORACLE_HOME/bin:.
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:. export DISPLAY=:0.0 unset USERNAME
unset LANG
. 设置内核参数
/usr/sbin/rcoracle start
. 验证oracle信息
oracle@devtest:~> id
uid=(oracle) gid=(oinstall) groups=(oinstall),(dba)
. 安装oracle
在~oracle/database/install/oraparam.ini的[Certified Versions]行加入SuSE-10后执行./ runInstaller
或者执行./runInstaller -ignoreSysPrereqs
. 设置GUI显示
#xhost +
$xhost + 并设置环境变量
export DISPLAY=:0.0
. 新建数据库
dbca
. 监听器配置(LISTENER)
>netmgr或netca
配置Listening Locations和Database Services项。
然后重启监听程序
>lsnrctl start
. 配置Service Naming
>netca
. 登陆测试
>sqlplus /nolog
sql>conn system/oracle@testdb
. 安装问题处理
. emca script 错误
分析解答:
出现此类问题,一般要求检查主机名与Hosts文件对应是否吻合,特别是大小写检查经常大意导致运行dbca 创建数据库过程中报错。出现此类问题后,可以通过以下步骤解决:
$ su - oracle
$ emca -deconfig dbcontrol db -repos drop #删除EM资料档案库
$ emca -repos create #建 EM 资料档案库
$ emca -config dbcontrol db #置数据的 Database Control 过上述步骤后,如果正常,EM管理控制台可正常使用,运行Http://IPAdrees:1158/em
如果运行ca -repos create 后出现异常,则检查Oracle local_listener是否为空,否则清空后再运行。
二、 创建数据库
. 新建数据库
系统数据文件目录:/oradata/system
用户归档日志目录:/oradata/logarch
用户数据文件目录:/oradata/userdata 执行dbca新建数据库 . 数据库启动脚本startdb.sh
#!/bin/sh sqlplus /nolog <<EOF
connect / as sysdba;
startup;
EOF lsnrctl start . 数据库关闭脚本shutdb.sh
#!/bin/sh lsnrctl stop sqlplus /nolog <<EOF
connect / as sysdba;
shutdown transactional;
EOF
三、 Oracle Data Guard配置(10g)
. primary数据库配置
) 确认primary处于归档模式
SQL>archive log list;
) 将primary设置为归档模式
SQL>alter database force logging;
) 创建standby控制文件
SQL> alter database create standby controlfile as '/oradata/system/tzdb/standby.ctl';
) 查看是否存在密码文件,不存在则创建
ls $ORACLE_HOME/dbs/orapwtzdb
orapwd file='orapwtzdb' password='1qaz!QAZ' entries=''
) 创建standby redo log
SQL> alter database add standby logfile group ('/oradata/system/tzdb/stdby_redo01.log') size 50m;
SQL> alter database add standby logfile group ('/oradata/system/tzdb/stdby_redo02.log') size 50m;
SQL> alter database add standby logfile group ('/oradata/system/tzdb/stdby_redo03.log') size 50m;
SQL> alter database add standby logfile group ('/oradata/system/tzdb/stdby_redo04.log') size 50m;
) 创建primary数据库客户端初始化参数文件
 此处需要修改多处,为了方便,先创建并修改pfile,然后通过pfile重建spfile,当然也可通过alter system set命令直接修改spfile:
SQL> create pfile='/oradata/system/tzdb/inittzdb.ora' from spfile;  修改上述primary的客户端参数文件/oradata/system/tzdb/inittzdb.ora,增加如下参数:
#-----------------------------------------
#新增配置参数
#-----------------------------------------
DB_UNIQUE_NAME=tzdba
LOG_ARCHIVE_CONFIG='DG_CONFIG=(tzdba,tzdbb)'
LOG_ARCHIVE_DEST_1='LOCATION=/oradata/logarch/tzdb VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=tzdba'
LOG_ARCHIVE_DEST_2='SERVICE=tzdbb LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=tzdbb'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
#ARCHIVE_LAG_TARGET= #-----------------------------------------
#配置standby角色的参数用于角色转换
#-----------------------------------------
FAL_SERVER=tzdbb
FAL_CLIENT=tzdba
STANDBY_FILE_MANAGEMENT=AUTO  通过pfile重建spfile
SQL>shutdown immediate;
SQL>create spfile from pfile='/oradata/system/tzdb/inittzdb.ora';
) 验证listenner和service name配置并测试
lsnrctl stop
lsnrctl start
tnsping tzdba
tnsping tzdbb
. standby数据库配置
) 复制primary的如下文或目录件到standby主机的相应目录
 $ORACLE_HOME/admin
 包括数据文件
 控制文件
 产生的standby控制文件
 在线日志文件
 密码文件
 参数文件(inittzdb.ora)
) 恢复standby的控制文件
cp standby.ctl control01.ctl
cp standby.ctl control02.ctl
cp standby.ctl control03.ctl
) 修改standby主机的sqlnet.ora,增加如下参数
SQLNET.EXPIRE_TIME=
) 修改初始化参数文件(/oradata/system/tzdb/inittzdb.ora)
 增加如下参数,注意同时修改*_dest的路径
#-----------------------------------------
#新增配置参数
#-----------------------------------------
DB_UNIQUE_NAME=tzdba
LOG_ARCHIVE_CONFIG='DG_CONFIG=(tzdba,tzdbb)'
LOG_ARCHIVE_DEST_1='LOCATION=/oradata/logarch/tzdb VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=tzdba'
LOG_ARCHIVE_DEST_2='SERVICE=tzdbb LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=tzdbb'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
#ARCHIVE_LAG_TARGET= #-----------------------------------------
#配置standby角色的参数用于角色转换
#-----------------------------------------
FAL_SERVER=tzdbb
FAL_CLIENT=tzdba
STANDBY_FILE_MANAGEMENT=AUTO  通过该pfile创建spfile
SQL> create spfile from pfile='/oradata/system/tzdb/inittzdb.ora';
) 启动standby到mount
SQL>startup mount;
) 启动redo应用
SQL>alter database recover managed standby database disconnect from session;
) Oracle Data Guard测试验证
. 查看同步情况
 先连接到primary数据库,然后查看
show parameter instance_name;
alter system switch logfile;
select max(sequence#) from v$archived_log;  连接到standby数据库,然后查看
show parameter instance_name;
select max(sequence#) from v$archived_log;  暂停redo应用,此时仍会接手归档日志,但不应用,直到恢复到应用模式。
alter database recover managed standby database cancel;  查看standby的归档日志是否已被应用到数据文件
select sequence#,applied from v$archived_log order by sequence#; 四、 Standby数据库日常维护
. 关闭standby数据库
shutdown immediate;
. 启动standby数据库到恢复模式
startup nomount;
alter database mount standby database;
alter database recover managed standby database disconnect from session;
. 启动standby数据库到只读模式
startup nomount;
alter database mount standby database;
alter database open read only;
. 将standby数据库从恢复模式切换到只读模式
alter database recover managed standby database cancel;
alter database open read only;
. 将standby数据库从只读模式切换到恢复模式
alter database recover managed standby database disconnect from session;

最新文章

  1. VirtualBox内ubuntu10.10系统和windows7 共享文件夹
  2. 资金归集率比率sql
  3. 如何用VB.Net创建一个三层的数据库应用程序
  4. Netgen mesh library : nglib
  5. Notice: Undefined offset 的解决方法
  6. (转)JS中innerHTML,innerText,value
  7. NOIP第7场模拟赛题解
  8. 线程池QueueUserWorkItem
  9. Springboot在IDEA中执行,开启热部署
  10. 实验排队功能实现(JAVA)
  11. DHCP服务器 出现的故障
  12. Codeforces Round #432 Div. 1
  13. python3安装ipython 过程以及问题
  14. Delphi: 圆形进度(环形进度)
  15. Android -- MediaRecord
  16. 浏览器端Less
  17. php include,require 主要是向网页中引入文件
  18. 13-hadoop-入门程序
  19. SSD-Tensorflow 从工程角度进行配置
  20. HTML 参考手册- (HTML5 标准)

热门文章

  1. HandlerMapping的3种访问形式
  2. 注册Jdbc驱动程序的三种方式
  3. php 无限极
  4. android studio 项目迁移编码问题
  5. DataRow映射实体
  6. Python多重装饰器
  7. PowerShell vs. PsExec for Remote Command Execution
  8. CRM 2013 限制Lookup
  9. iOS 图片轮播图(自动滚动)
  10. Java反射遍历数组