SLES 10安装Oracle10gR2笔记

SLES 10安装Oracle10gR2笔记
一、    数据库安装
1.    安装C/C++ Compiler
gcc --version验证是否安装
2.    验证Service Pack版本
SPident –v
3.    修改/etc/hosts
    #127.0.0.1       localhost
192.168.0.123    localhost
4.    安装先决程序包
可以在安装操作系统是选择Oracle Base Server或者安装如下程序包:
#rpm -ivh  orarun-1.9-21.2.x86_64.rpm
5.    设置oracle用户
修改/etc/passwd的oracle用户的/bin/false为/bin/bash,或先删除用户重建。并设置oracle用户密码:
# groupadd oinstall
# groupadd dba
# useradd oracle -g oinstall -G dba
# passwd oracle

6.    设置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
7.    设置内核参数
/usr/sbin/rcoracle start
8.    验证oracle信息
oracle@devtest:~> id
uid=1001(oracle) gid=103(oinstall) groups=103(oinstall),104(dba)
9.    安装oracle
在~oracle/database/install/oraparam.ini的[Certified Versions]行加入SuSE-10后执行./ runInstaller
或者执行./runInstaller -ignoreSysPrereqs
10.    设置GUI显示
#xhost +
$xhost +

并设置环境变量
export DISPLAY=:0.0
11.    新建数据库
dbca
12.    监听器配置(LISTENER)
>netmgr或netca
配置Listening Locations和Database Services项。
然后重启监听程序
>lsnrctl start
13.    配置Service Naming
>netca
14.    登陆测试
>sqlplus /nolog
sql>conn system/oracle@testdb
15.    安装问题处理
16.    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是否为空,否则清空后再运行。
二、    创建数据库
1.    新建数据库
系统数据文件目录:/oradata/system
用户归档日志目录:/oradata/logarch
用户数据文件目录:/oradata/userdata

执行dbca新建数据库

2.    数据库启动脚本startdb.sh
#!/bin/sh

sqlplus /nolog <<EOF
connect / as sysdba;
startup;
EOF

lsnrctl start

3.    数据库关闭脚本shutdb.sh
#!/bin/sh

lsnrctl stop

sqlplus /nolog <<EOF
connect / as sysdba;
shutdown transactional;
EOF
三、    Oracle Data Guard配置(10g)
1.    primary数据库配置
1)    确认primary处于归档模式
SQL>archive log list;
2)    将primary设置为归档模式
SQL>alter database force logging;
3)    创建standby控制文件
SQL> alter database create standby controlfile as '/oradata/system/tzdb/standby.ctl';
4)    查看是否存在密码文件,不存在则创建
ls $ORACLE_HOME/dbs/orapwtzdb
orapwd file='orapwtzdb' password='1qaz!QAZ' entries='30'
5)    创建standby redo log
SQL> alter database add standby logfile group 4 ('/oradata/system/tzdb/stdby_redo01.log') size 50m;
SQL> alter database add standby logfile group 5 ('/oradata/system/tzdb/stdby_redo02.log') size 50m;
SQL> alter database add standby logfile group 6 ('/oradata/system/tzdb/stdby_redo03.log') size 50m;
SQL> alter database add standby logfile group 7 ('/oradata/system/tzdb/stdby_redo04.log') size 50m;
6)    创建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=300

#-----------------------------------------
#配置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';
7)    验证listenner和service name配置并测试
lsnrctl stop
lsnrctl start
tnsping tzdba
tnsping tzdbb
2.    standby数据库配置
1)    复制primary的如下文或目录件到standby主机的相应目录
    $ORACLE_HOME/admin
    包括数据文件
    控制文件
    产生的standby控制文件
    在线日志文件
    密码文件
    参数文件(inittzdb.ora)
2)    恢复standby的控制文件
cp standby.ctl control01.ctl
cp standby.ctl control02.ctl
cp standby.ctl control03.ctl
3)    修改standby主机的sqlnet.ora,增加如下参数
SQLNET.EXPIRE_TIME=2
4)    修改初始化参数文件(/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=300

#-----------------------------------------
#配置standby角色的参数用于角色转换 
#-----------------------------------------
FAL_SERVER=tzdbb
FAL_CLIENT=tzdba
STANDBY_FILE_MANAGEMENT=AUTO

    通过该pfile创建spfile
SQL> create spfile from pfile='/oradata/system/tzdb/inittzdb.ora';
5)    启动standby到mount
SQL>startup mount;
6)    启动redo应用
SQL>alter database recover managed standby database disconnect from session;
8)    Oracle Data Guard测试验证
3.    查看同步情况
    先连接到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数据库日常维护
1.    关闭standby数据库
shutdown immediate;
2.    启动standby数据库到恢复模式
startup nomount;
alter database mount standby database;
alter database recover managed standby database disconnect from session;
3.    启动standby数据库到只读模式
startup nomount;
alter database mount standby database;
alter database open read only;
4.    将standby数据库从恢复模式切换到只读模式
alter database recover managed standby database cancel;
alter database open read only;
5.    将standby数据库从只读模式切换到恢复模式
alter database recover managed standby database disconnect from session;

 

posted @ 2015-11-24 10:54  小さいです哥  阅读(268)  评论(0编辑  收藏  举报