데이터 베이스 MySQL 튜토리얼 Oracle 10g R2 RAC Install On OEL5 x86_64

Oracle 10g R2 RAC Install On OEL5 x86_64

Jun 07, 2016 pm 05:06 PM
오라클 데이터베이스

Oracle 10g R2 RAC Install On OEL5 x86_64

1.安装操作系统需求包
binutils-2.17.50.0.6-2 (x86_64)
compat-db-4.2.52-5.1 (x86_64)
compat-libstdc++-296-2.96-138 (i386)
compat-libstdc++-33-3.2.3-61(x86_64)
compat-libstdc++-33-3.2.3-61 (i386)
control-center-2.16.0-14 (x86_64)
gcc-4.1.1-52 (x86_64)
gcc-c++-4.1.1-52 (x86_64)
glibc-2.5-12 (x86_64)
glibc-2.5-12 (i686)
glibc-common-2.5-12 (x86_64)
glibc-devel-2.5-12 (x86_64)
glibc-devel-2.5-12 (i386)
glibc-headers-2.5-12 (x86_64)
ksh-20060214-1.4 (x86_64)
libaio-0.3.106-3.2 (x86_64)
libgcc-4.1.1-52 (i386)
libgcc-4.1.1-52 (x86_64)
libgnome-2.16.0-6 (x86_64)
libgnomeui-2.16.0-5 (x86_64)
libgomp-4.1.1-52 (x86_64)
libstdc++-4.1.1-52 (x86_64)
libstdc++-devel-4.1.1-52 (x86_64)
libXp-1.0.0-8 (i386)
libXtst-1.0.1-3.1(i386)
make-3.81-1.1 (x86_64)
sysstat-7.0.0-3 (x86_64)

注:rpm -qa|grep XXX
    rpm -Uvh XXX

2.停不必要的服务[RHEL5U1]
chkconfig acpid           off
chkconfig anacron         off
chkconfig apmd            off
chkconfig auditd          off
chkconfig autofs          off
chkconfig avahi-daemon    off
chkconfig bluetooth       off
chkconfig cpuspeed        off
chkconfig cups            off
chkconfig firstboot       off
chkconfig gpm             off
chkconfig haldaemon       off
chkconfig hidd            off
chkconfig ip6tables       off
chkconfig iptables        off
chkconfig irqbalance      off
chkconfig isdn            off
chkconfig mcstrans        off
chkconfig mdmonitor       off
chkconfig microcode_ctl   off
chkconfig netfs           off
chkconfig pcscd           off
chkconfig readahead_early off
chkconfig restorecond     off
chkconfig rhnsd           off
chkconfig rpcgssd         off
chkconfig rpcidmapd       off
chkconfig sendmail        off
chkconfig setroubleshoot  off
chkconfig smartd          off
chkconfig xfs             off
chkconfig yum-updatesd    off

3.修改系统配置参数/etc/sysctl.conf
echo "kernel.shmall = 2097152">>/etc/sysctl.conf
echo "kernel.shmmax = 4294967295">>/etc/sysctl.conf
echo "kernel.shmmni = 4096">>/etc/sysctl.conf
echo "kernel.sem = 250 32000 100 128">>/etc/sysctl.conf
echo "net.ipv4.ip_local_port_range = 9000 65500">>/etc/sysctl.conf
echo "net.core.rmem_default = 262144">>/etc/sysctl.conf
echo "net.core.rmem_max = 2097152">>/etc/sysctl.conf
echo "net.core.wmem_default = 262144">>/etc/sysctl.conf
echo "net.core.wmem_max = 1048576">>/etc/sysctl.conf
echo "fs.file-max = 262144">>/etc/sysctl.conf

让参数生效
sysctl -p

注:
shmall 是全部允许使用的共享内存大小,shmmax 是单个段允许使用的大小。这两个可以设置为内存的 90%。
例如 16G 内存,16*1024*1024*1024*90% = 15461882265,shmall 的大小为 15461882265/4k(getconf PAGESIZE可得到) = 3774873。

5.创建Oracle用户和组
groupadd -g 600 oinstall
groupadd -g 601 dba
groupadd -g 602 oper
useradd -u 600 -g oinstall -G dba,oper oracle -d /home/oracle
passwd oracle

6.创建ORACLE安装目录变更属主
mkdir -p /oracle/product/10.2.0/crs
mkdir -p /oracle/product/10.2.0/db
chown -R oracle:oinstall /oracle

7.修改ORACLE用户默认限制
echo "oracle           soft    nproc   2047">>/etc/security/limits.conf
echo "oracle           hard    nproc   16384">>/etc/security/limits.conf
echo "oracle           soft    nofile  4096">>/etc/security/limits.conf
echo "oracle           hard    nofile  65536">>/etc/security/limits.conf

echo "session    required     /lib/security/pam_limits.so">>/etc/pam.d/login
echo "session    required     pam_limits.so">>/etc/pam.d/login

echo "if [ $USER = "oracle" ]; then">>/etc/profile
echo "   if [ $SHELL = "/bin/ksh" ]; then">>/etc/profile
echo "      ulimit -p 16384">>/etc/profile
echo "      ulimit -n 65536">>/etc/profile
echo "   else">>/etc/profile
echo "      ulimit -u 16384 -n 65536">>/etc/profile
echo "   fi">>/etc/profile
echo "fi">>/etc/profile

8.配置ORACLE环境变量
1)ORACLE用户.bash_profile
su - oracle
echo "export ORACLE_BASE=/oracle">>~/.bash_profile
echo "export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db">>~/.bash_profile
echo "export ORA_CRS_HOME=$ORACLE_BASE/product/10.2.0/crs">>~/.bash_profile
echo "export ORACLE_SID=racdb1 # The Second Node is Named racdb2">>~/.bash_profile
echo "export PATH=$PATH:$ORA_CRS_HOME/bin:$ORACLE_HOME/bin:$ORACLE_HOME/dcm/bin:$ORACLE_HOME/webcache/bin:$ORACLE_HOME/opmn/bin">>~/.bash_profile
echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:/usr/lib:/usr/local/lib">>~/.bash_profile
echo "export TMPDIR=/tmp">>~/.bash_profile
echo "export TMP=/tmp">>~/.bash_profile

2)ROOT用户.bash_profile">>~/.bash_profile
su -
echo "export ORACLE_BASE=/oracle">>~/.bash_profile
echo "export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db">>~/.bash_profile
echo "export ORA_CRS_HOME=$ORACLE_BASE/product/10.2.0/crs">>~/.bash_profile
echo "export PATH=$PATH:$ORA_CRS_HOME/bin">>~/.bash_profile

9.配置/etc/hosts网络文件
cp /etc/hosts /etc/hosts.back
echo "192.168.56.101      rac1">>/etc/hosts
echo "192.168.56.111      rac1-vip">>/etc/hosts
echo "10.10.10.101        rac1-priv">>/etc/hosts
echo "192.168.56.102      rac2">>/etc/hosts
echo "192.168.56.112      rac2-vip">>/etc/hosts
echo "10.10.10.102        rac2-priv">>/etc/hosts

10.节点间建立SSH 用户等效项
1)在各节点创建RAS与DSA密钥
su - oracle
mkdir ~/.ssh
chmod 700 ~/.ssh
ssh-keygen -t rsa
注:三次回车。
ssh-keygen -t dsa
注:三次回车。

2)在欲进行RAC安装OUI的节点上,添加密钥到授权密钥文件authorized_keys中
$ssh rac1 cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys
$ssh rac1 cat ~/.ssh/id_dsa.pub>>~/.ssh/authorized_keys
$ssh rac2 cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys
$ssh rac2 cat ~/.ssh/id_dsa.pub>>~/.ssh/authorized_keys
$chmod 600 ~/.ssh/authorized_keys

3)拷贝副本到其它节点对应目录下并授权
节点一:
$scp ~/.ssh/authorized_keys rac2:/home/oracle/.ssh/
节点二:
$chmod 600 ~/.ssh/authorized_keys

4)在OUI节点上测试SSH等效性
$ssh rac1 hostname
$ssh rac2 hostname
注:如果无需输入密码就出现主机名,说明SSH配置成功。


11.配置hangcheck timer内核模块
echo "options hangcheck-timer hangcheck_tick=30 hangcheck_margin=180">>/etc/modprobe.conf
echo "modprobe hangcheck_timer">>/etc/rc.d/rc.local

12.配置两节点LINUX操作系统时间同步
1)在节点一进行如下操作
cp /etc/ntp.conf /etc/ntp.conf.back
echo "restrict 10.1.120.0 mask 255.255.255.0 nomodify notrap">>/etc/ntp.conf
service ntpd start

2)在节点二进行如下操作
#crontab -e
1-59 * * * * ntpdate 10.1.120.201


13.在其中一个节点配置集群注册表OCR、表决磁盘voting共享LV
1)创建一个分区
fdisk /dev/sdd
n
p
t
8e
w

2)创建一个pv
pvcreate  /dev/sdd1
pvscan

3)创建一个vg
vgcreate crsvg /dev/sdd1
vgscan
注:vgcreate datavg /dev/sdc1 /dev/sdd1 /dev/sde1

4)创建db所需的lv
lvcreate -L 300M -n lvocr1 crsvg
lvcreate -L 300M -n lvocr2 crsvg
lvcreate -L 120M -n lvvoting1 crsvg
lvcreate -L 120M -n lvvoting2 crsvg
lvcreate -L 120M -n lvvoting3 crsvg
lvcreate -L 20M -n  lvasmpwd crsvg
lvscan

5)重启所有节点,加载共享磁盘信息
#reboot
6)配置lv关联至raw
cp /etc/sysconfig/rawdevices /etc/sysconfig/rawdevices.back
echo "/dev/raw/raw1  /dev/crsvg/lvocr1">>/etc/sysconfig/rawdevices
echo "/dev/raw/raw2  /dev/crsvg/lvocr2">>/etc/sysconfig/rawdevices
echo "/dev/raw/raw3  /dev/crsvg/lvvoting1">>/etc/sysconfig/rawdevices
echo "/dev/raw/raw4  /dev/crsvg/lvvoting2">>/etc/sysconfig/rawdevices
echo "/dev/raw/raw5  /dev/crsvg/lvvoting3">>/etc/sysconfig/rawdevices
echo "/dev/raw/raw6  /dev/crsvg/lvasmpwd">>/etc/sysconfig/rawdevices
/sbin/service rawdevices restart

7)配置raw属主
cp /etc/rc.local /etc/rc.local.back
echo "chown oracle:dba /dev/raw/raw[0-9]">>/etc/rc.local
echo "chmod 660 /dev/raw/raw[0-9]">>/etc/rc.local

dd if=/dev/zero of=/dev/raw/raw1 bs=8192k count=3000
dd if=/dev/zero of=/dev/raw/raw2 bs=8192k count=3000
dd if=/dev/zero of=/dev/raw/raw3 bs=8192k count=1200
dd if=/dev/zero of=/dev/raw/raw4 bs=8192k count=1200
dd if=/dev/zero of=/dev/raw/raw5 bs=8192k count=1200
dd if=/dev/zero of=/dev/raw/raw6 bs=8192k count=200

8)查看相前raw的信息
raw -qa

9)重启所有节点,加载raw映射信息
#reboot

14.主节点安装开始
$export LANG=en_US
$export DISPLAY=192.168.108.1:0.0 --本机IP地址,将图形界面引到本机
$ ./runInstaller -ignoreSysPrereqs

15.BUG
1)在最后的节点运行root.sh脚本时报如下错误——
Oracle CRS stack installed and running under init(1M)
Running vipca(silent) for configuring nodeapps
/home/oracle/crs/oracle/product/10/crs/jdk/jre//bin/java: error while loading
shared libraries: libpthread.so.0: cannot open shared object file:
No such file or directory

解决办法:
在安装最后,,运行root.sh脚本之前,修改下列文件
/bin/vipca
/bin/srvctl
/bin/srvctl
/bin/srvctl
中的内容
***VIPCA*********************************************************************
if [ "$arch" = "i686" -o "$arch" = "ia64" -o "$arch" = "x86_64" ]
then
  LD_ASSUME_KERNEL=2.4.19
  export LD_ASSUME_KERNEL
fi
#增加如下内容
unset LD_ASSUME_KERNEL         *****************************************************************************
***SRVCTL********************************************************************
LD_ASSUME_KERNEL=2.4.19
export LD_ASSUME_KERNEL
#增加如下内容
unset LD_ASSUME_KERNEL          *****************************************************************************
修改完成后,在二节点上手动运行./vipca,配置完成后关闭图形界面。

2)在最后节点运行vipca时,报如下错误——
Error 0(Native: listNetInterfaces:[3])
[Error 0(Native: listNetInterfaces:[3])]

解决办法:
/bin # ./oifcfg setif -global eth0/192.168.56.0:public
/bin # ./oifcfg setif -global eth1/172.10.10.0:cluster_interconnect

/bin # ./oifcfg getif
 eth0 192.168.56.0 global public
 eth1 172.10.10.0 global cluster_interconnect

/bin # ./oifcfg iflist
eth0 192.168.56.0
eth1 172.10.10.0

15.禁止/启用 CRS跟随操作系统自动启动
/etc/init.d/init.crs disable
/etc/init.d/init.crs enable

注:启动CRS crsctl start crs
    亦可以——
        /etc/init.d/init.cssd start
        /etc/init.d/init.crs start

linux

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Oracle에서 테이블이 속한 테이블스페이스를 확인하는 방법 Oracle에서 테이블이 속한 테이블스페이스를 확인하는 방법 Jul 06, 2023 pm 01:31 PM

Oracle에서 테이블이 속한 테이블스페이스를 확인하는 방법: 1. "SELECT" 문을 사용하고 테이블 이름을 지정하여 지정된 테이블이 속한 테이블스페이스를 찾습니다. 2. Oracle에서 제공하는 데이터베이스 관리 도구를 사용하여 확인합니다. 3. SQL*Plus에서는 "DESCRIBEyour_table_name" 명령을 입력하여 테이블이 속한 테이블스페이스를 볼 수 있습니다. .

PDO를 사용하여 Oracle 데이터베이스에 연결하는 방법 PDO를 사용하여 Oracle 데이터베이스에 연결하는 방법 Jul 28, 2023 pm 12:48 PM

PDO를 사용하여 Oracle 데이터베이스에 연결하는 방법 개요: PDO(PHPDataObjects)는 PHP에서 데이터베이스를 운영하기 위한 확장 라이브러리로 여러 유형의 데이터베이스에 액세스할 수 있는 통합 API를 제공합니다. 이 기사에서는 PDO를 사용하여 Oracle 데이터베이스에 연결하고 몇 가지 일반적인 데이터베이스 작업을 수행하는 방법에 대해 설명합니다. 단계: Oracle 데이터베이스 드라이버 확장 설치 PDO를 사용하여 Oracle 데이터베이스에 연결하기 전에 해당 Oracle을 설치해야 합니다.

오라클에서 중복 데이터 하나만 검색하는 방법 오라클에서 중복 데이터 하나만 검색하는 방법 Jul 06, 2023 am 11:45 AM

Oracle이 중복 데이터 중 하나만 가져오는 단계: 1. GROUP BY 및 HAVING 절과 결합된 SELECT 문을 사용하여 중복 데이터를 찾습니다. 2. ROWID를 사용하여 중복 데이터를 삭제하여 정확한 중복 데이터 레코드가 삭제되도록 합니다. 중복 데이터를 삭제하려면 "ROW_NUMBER" ()" 함수를 사용하세요. 그러면 각 중복 데이터 집합의 첫 번째 레코드를 제외한 모든 레코드가 삭제됩니다. 3. "select count(*) from" 문을 사용하여 삭제된 레코드 수를 반환합니다. 결과를 보장합니다.

PHP 및 Oracle 데이터베이스로 데이터 가져오기 구현 PHP 및 Oracle 데이터베이스로 데이터 가져오기 구현 Jul 12, 2023 pm 06:46 PM

PHP 및 Oracle 데이터베이스로 데이터 가져오기 구현 웹 개발에서 PHP를 서버측 스크립트 언어로 사용하면 데이터베이스를 편리하게 운영할 수 있습니다. 일반적인 관계형 데이터베이스 관리 시스템인 Oracle 데이터베이스는 강력한 데이터 저장 및 처리 기능을 갖추고 있습니다. 이 기사에서는 PHP를 사용하여 Oracle 데이터베이스로 데이터를 가져오는 방법을 소개하고 해당 코드 예제를 제공합니다. 먼저, PHP와 Oracle 데이터베이스가 설치되어 있는지, 그리고 PHP가 다음과 같이 구성되었는지 확인해야 합니다.

PHP 및 Oracle 데이터베이스 연결 풀을 효율적으로 사용하는 방법 PHP 및 Oracle 데이터베이스 연결 풀을 효율적으로 사용하는 방법 Jul 12, 2023 am 10:07 AM

PHP 및 Oracle 데이터베이스에서 연결 풀링을 효율적으로 사용하는 방법 소개: PHP 애플리케이션을 개발할 때 데이터베이스 사용은 필수적인 부분입니다. Oracle 데이터베이스와 상호 작용할 때 연결 풀을 사용하는 것은 애플리케이션 성능과 효율성을 향상시키는 데 매우 중요합니다. 이 기사에서는 PHP에서 Oracle 데이터베이스 연결 풀을 효율적으로 사용하는 방법을 소개하고 해당 코드 예제를 제공합니다. 1. 커넥션 풀링의 개념과 장점 커넥션 풀링은 데이터베이스의 커넥션을 미리 생성하여 유지하는 기술이다.

Oracle 데이터베이스에는 jdk가 필요합니까? Oracle 데이터베이스에는 jdk가 필요합니까? Jun 05, 2023 pm 05:06 PM

oracle 데이터베이스에는 jdk가 필요합니다. 1. 특정 소프트웨어나 기능을 사용하는 경우 JDK에 포함된 다른 소프트웨어나 라이브러리가 필요합니다. 2. Oracle 데이터베이스에서 Java 프로그램을 실행하려면 Java JDK를 설치해야 합니다. Java 애플리케이션 기능 개발 및 컴파일을 제공합니다. 4. 특정 기능을 구현하고 구현하는 데 도움이 되는 Java 기능에 대한 Oracle의 요구 사항을 충족합니다.

PHP를 사용하여 PDO를 확장하여 Oracle 데이터베이스에 연결하는 방법 PHP를 사용하여 PDO를 확장하여 Oracle 데이터베이스에 연결하는 방법 Jul 29, 2023 pm 07:21 PM

PHP를 사용하여 PDO를 확장하여 Oracle 데이터베이스에 연결하는 방법 소개: PHP는 매우 널리 사용되는 서버 측 프로그래밍 언어이고 Oracle은 일반적으로 사용되는 관계형 데이터베이스 관리 시스템입니다. 이 문서에서는 PHP 확장 PDO(PHPDataObjects)를 사용하여 Oracle 데이터베이스에 연결하는 방법을 소개합니다. 1. PDO_OCI 확장을 설치합니다. Oracle 데이터베이스에 연결하려면 먼저 PDO_OCI 확장을 설치해야 합니다. PDO_OCI 확장을 설치하는 단계는 다음과 같습니다.

Oracle에서 테이블스페이스 크기를 쿼리하는 방법 Oracle에서 테이블스페이스 크기를 쿼리하는 방법 Jul 06, 2023 pm 01:45 PM

Oracle에서 테이블 공간 크기를 쿼리하는 단계: 1. 데이터베이스 관리자 계정을 사용하여 Oracle 데이터베이스에 로그인합니다. 2. "SELECT" 문을 사용하여 공간 목록을 봅니다. 3. 테이블 공간 크기를 쿼리하는 방법에는 세 가지가 있습니다. : dbms_utility 패키지를 사용하여 쿼리하고, dba_segments 뷰 쿼리를 사용하고, dba_data_files 뷰 쿼리를 사용합니다. 4. "DBMS_OUTPUT.PUT_LINE" 함수 또는 기타 방법을 사용하여 쿼리 결과를 표시합니다.

See all articles