Windows XP + VMWare Server 1.0.6 + CentOS 5.2 + Oracle 10g Rac (10.2.0.1)安装文档

merryboy 2008-09-18 07:21:16
一、测试环境及目的
主机:一台PC,Intel-32位的芯片(P4 2.8GHz),1.5GB内存,安装CentOS-5.2-i386-bin-DVD.iso(3.74GB)版本的操作系统,在这个主机(XP)上面安装了2个虚拟机,全部安装CentOS-5.2-i386-bin-DVD.iso版本的操作系统,需要进行内核定制(升级到2.6.18-92.1.10.e15).
具体软硬件环境:
CPU:Intel P4 32bit 2.8GHz
Memory:1.5GB
OS:Windows XP , CentOS5.2 for x86_32bit
App:VMWare Server 1.0.6 build-91891 for windows , Telnet For CentOS 5.2(in DVD), Ftp For CentOS 5.2(yum From Internet) , XManager 2.0 for Windows , jdk-1_5_0_16-linux-i586-rpm.bin
Oracle:10201_clusterware_linux32.zip , 10201_database_linux32.zip , oracleasm-support-2.0.4-1.el5.i386.rpm , oracleasmlib-2.0.3-1.el5.i386.rpm
目的:实现 Windows XP + VMware Server 1.0.6 + CentOS 5.2 + Oracle 10g Rac + RAW 下的Oracle 10g Rac数据库安装及测试.

二、下载软件
1、下载并安装 VMWare Server 1.0.6 build-91891 for windows
2、下载
我的CentOS 5.2 的初始版本号是2.6.18-92.el5,升级内核后是2.6.18-92.1.10.e15(这当然是装好系统后,用uname -r查看的)(虚拟机要多装,才会熟练)
内核为什么要升级,主要是解决时间同步的问题,内核不升级,VMware-tools没有办法安装好,rac之间的时间同步很成问题,这个是我安装了多次rac过程中难以解决的问题,最后发现的解决办法。
ASM: 选择IA32体系的(32位系统体系)

(2.6.18-92.1.10.e15)(这个版本的有用,需要下载)
oracleasm-support-2.0.4-1.el5.i386.rpm
oracleasmlib-2.0.3-1.el5.i386.rpm
oracleasm-2.6.18-92.1.10.el5-2.0.4-1.el5.i686.rpm


(2.6.18-92.el5)(这个版本的不用去管了,在这里还保留,是因为算是个过程的记录)
oracleasm-support-2.0.4-1.el5.i386.rpm
oracleasmlib-2.0.3-1.el5.i386.rpm
oracleasm-2.6.18-92.el5-2.0.4-1.el5.i686.rpm

(这个版本的有用,需要下载)
oracle clusterware:
10201_clusterware_linux32.zip
oracle database:
10201_database_linux32.zip

Asm下载地址:
http://www.oracle.com/technology/software/tech/linux/asmlib/rhel5.html
下载时看清是x86还是x86_64,一定看好自己的内核版本,特别是小版本号

clusterware下载地址:
http://www.oracle.com/technology/software/products/database/oracle10g/htdocs/10201linuxsoft.html

三、创建共享磁盘并配置虚拟机
1、在C:\Program Files\VMware\VMware Server目录下执行以下命令:
vmware-vdiskmanager -c -s 1Gb -a lsilogic -t 2 "e:\centosshare\ocfs.vmdk" |用于Oracle集群注册表文件和CRS表决磁盘 (ocr,vote)

vmware-vdiskmanager -c -s 2Gb -a lsilogic -t 2 "e:\centosshare\asm1.vmdk" |用于Oracle的数据文件

vmware-vdiskmanager -c -s 2Gb -a lsilogic -t 2 "e:\centosshare\asm2.vmdk" |用于Oracle的数据文件

vmware-vdiskmanager -c -s 2Gb -a lsilogic -t 2 "e:\centosshare\asm3.vmdk" |用于Oracle的数据文件

vmware-vdiskmanager -c -s 2Gb -a lsilogic -t 2 "e:\centosshare\asm4.vmdk" |用于Oracle的闪回恢复区

2、 在vmware server console 创建 vmware guest OS, 选择typical create-> Other Linux 2.6.x kernel,VirTual machine name取名 centosrac1, Use Bridged networking ,虚拟硬盘20GB,不选择Allocate all disk space now和Split disk into 2GB files,其他都是默认.
硬盘大小选择20GB, 建立方式为 虚拟文件.
3、 创建好后vmware guest OS之后, 给guest 加上一块NIC(也就是网卡)(Edit virtual machine settings -->Add --> Next --> Ethernet Adapter --> Bridged -->完成)
修改 内存选择1024MB=1G(>800MB您就看不到warning了),
4、双击Hard Disk (SCSI 0:0) 选择Advanced...,Mode选择Independent ,Persistent,点击 ok
5、 关掉vmware console, 在centosrac1目录下面,打开Other Linux 2.6.x kernel.vmx, 在最后空白处添加以下内容
scsi1.present = "TRUE"
scsi1.virtualDev = "lsilogic"
scsi1.sharedBus = "virtual"

scsi1:1.present = "TRUE"
scsi1:1.mode = "independent-persistent"
scsi1:1.filename = "e:\centosshare\ocfs.vmdk"
scsi1:1.deviceType = "disk"

scsi1:2.present = "TRUE"
scsi1:2.mode = "independent-persistent"
scsi1:2.filename = "e:\centosshare\asm1.vmdk"
scsi1:2.deviceType = "disk"

scsi1:3.present = "TRUE"
scsi1:3.mode = "independent-persistent"
scsi1:3.filename = "e:\centosshare\asm2.vmdk"
scsi1:3.deviceType = "disk"

scsi1:4.present = "TRUE"
scsi1:4.mode = "independent-persistent"
scsi1:4.filename = "e:\centosshare\asm3.vmdk"
scsi1:4.deviceType = "disk"

scsi1:5.present = "TRUE"
scsi1:5.mode = "independent-persistent"
scsi1:5.filename = "e:\centosshare\asm4.vmdk"
scsi1:5.deviceType = "disk"

disk.locking = "false"
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSize = "0"
diskLib.DataCacheMinReadAheadSize = "0"
diskLib.dataCachePageSize = "4096"
diskLib.maxUnsyncedWrites = "0"

这段是对vmware使用共享硬盘的方式进行定义,大多数人都知道配置 disk.locking ="false" 却漏掉dataCache
保存退出之后,重新打开您的vmware-console,您就能够看到vmware guest OS的配置中,都有这些硬盘出现了.
四、安装CentOS操作系统
1、配置虚拟机 CD-ROM device -->Use ISO image -->选择你的CentOS-5.2-i386-bin-DVD.iso文件位置,然后启动虚拟机
2、安装步骤如下:
(如果启动不了,在虚拟机启动的时候,按Esc,选择3 CD-ROM Drive 来启动)
boot: 回车
跳过对CD media的检查: Skip
Next
Chinese(Simplified)(简体中文)
美国英语式
是(Y)
要选择察看分区细节,把我们添加的盘(vote,ocr,asm)不要包含到Vl00里面了.
把检验和修改分区方案选择上
下一步(N)
是(Y)
选择VolGroup00 -->编辑-->LogVol00-->编辑-->把容量改成18368-->把sdb1 sdc1 sdd1 sde1 sdf1的勾取消掉
达到的效果 如下: /dev/sdb1 LVM PV 1019 1 130 没有挂载点(挂载点是空白的),sdc1 sdd1 sde1 sdf1效果也是一样的.这里只需要添加这些硬盘,这些硬盘不用挂到文件系统上.
下一步(N)
下一步(N)
下一步(N)
下一步(N)
输入你的ROOT用户密码
下一步(N)

选择 现在定制(C)
下一步(N)

桌面环境 选择 GNOME桌面环境
应用程序 选择 编辑器,其他的是默认的,不修改
开发 选择 GNOME软件开发 开发工具 开发库
服务器 选择 Windows文件服务器
基本系统 选择 基本,其他的是默认的,不修改
虚拟化 不选择
集群 不选择
集群存储 不选择
下一步(N)
下一步(N)

大约花费50分钟时间
然后,VM --> Settings --> CD-ROM
重新引导

前进(F)
防火墙禁用

前进(F)
是(Y)

SELinux 设置 :禁用
前进(F)
是(Y)

把系统时间改成当前时间
前进(F)

输入一个新建的一般用户和密码
前进(F)

前进(F)

完成(F)
确定(O)

启动到操作系统后,

需要解决以下问题,请按照先后顺序进行解决:
CentOS 5.2 在 VMware下,如何联网到Internet的问题
VMware Server 1.0.6虚拟机Centos OS5.2系统时间同步的问题
CentOS 5.2_FTP设置的问题
CentOS 5.2_Telnet设置的问题
CentOS 5.2_Xmanager设置的问题
备份CentOS 5.2系统后,网卡设置的问题
激活CentOS 5.2第二个网卡的问题
sendmail启动时间过长的问题



来源于网络,回归于网络。
我的邮箱:happy.every.day@126.com QQ:48399956
快乐!
2008年9月18日
...全文
8640 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
winnerhe 2012-02-08
  • 打赏
  • 举报
回复
正做测试,参考参考!
赞一个!
leodeny 2008-11-16
  • 打赏
  • 举报
回复
UP

merryboy 2008-09-23
  • 打赏
  • 举报
回复
一整篇文章贴不完,分成了3份
Windows XP + VMWare Server 1.0.6 + CentOS 5.2 + Oracle 10g Rac (10.2.0.1)安装文档
Windows XP + VMWare Server 1.0.6 + CentOS 5.2 + Oracle 10g Rac (10.2.0.1)安装文档 2
Windows XP + VMWare Server 1.0.6 + CentOS 5.2 + Oracle 10g Rac (10.2.0.1)安装文档 3
你可以了解全部,资料是我验证过的,过程不容易,希望能对大家有所帮助。

来源于网络,回归于网络。
我的邮箱:happy.every.day@126.com QQ:48399956
快乐!
2008年9月23日
gianlian_1 2008-09-22
  • 打赏
  • 举报
回复
资源共享,值得称赞;
jdsnhan 2008-09-18
  • 打赏
  • 举报
回复

资源共享,值得称赞;
不美之处,连发三遍;
功过相抵,不予评判。
merryboy 2008-09-18
  • 打赏
  • 举报
回复
11.建立节点之间的互信(建议使用方法1来完成此项设置)

方法1:
Create the /etc/hosts.equiv file as the root user.
#touch /etc/hosts.equiv
#chmod 600 /etc/hosts.equiv
#chown root:root /etc/hosts.equiv
Edit the /etc/hosts.equiv file to include all the RAC nodes:
# cp /etc/hosts.equiv /etc/hosts.equiv.bak
# gedit /etc/hosts.equiv
+rac1 oracle
+rac2 oracle
+rac1-priv oracle
+rac2-priv oracle

需在两台计算机都要运行:
#su - oracle
$ssh-keygen -t rsa 生成密钥对,使用空密码
生成密钥对:
只需在一台服务器上操作:
[oracle@rac1 ~]$ ssh 192.168.1.100 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys
[oracle@rac1 ~]$ ssh 192.168.1.101 cat /home/oracle/.ssh/id_rsa.pub >> authorized_keys
[oracle@rac1 ~]$ scp authorized_keys 192.168.1.100:/home/oracle/.ssh/
[oracle@rac1 ~]$ scp authorized_keys 192.168.1.101:/home/oracle/.ssh/
需在两台计算机上操作:
[oracle@rac1 ~]$ chmod 600 /home/oracle/.ssh/authorized_keys
[oracle@rac2 ~]$ chmod 600 /home/oracle/.ssh/authorized_keys

#ssh-keygen -t rsa 生成密钥对,使用空密码
生成密钥对:
只需在一台服务器上操作:
[root@rac1 ~]# ssh 192.168.1.100 cat /root/.ssh/id_rsa.pub >> authorized_keys
[root@rac1 ~]# ssh 192.168.1.101 cat /root/.ssh/id_rsa.pub >> authorized_keys
[root@rac1 ~]# scp authorized_keys 192.168.1.100:/root/.ssh/
[root@rac1 ~]# scp authorized_keys 192.168.1.101:/root/.ssh/
需在两台计算机上操作:
[root@rac1 ~]# chmod 600 /root/.ssh/authorized_keys
[root@rac2 ~]# chmod 600 /root/.ssh/authorized_keys

所有的验证:
在两台计算机上的root权限和oracle权限下,都要运行以下命令:
ssh localhost.localdomain date
ssh rac1 date
ssh rac2 date
ssh rac1-priv date
ssh rac2-priv date
ssh rac1.localdomain date
ssh rac2.localdomain date
ssh rac1-priv.localdomain date
ssh rac2-priv.localdomain date
如果有问yes/no,都输入yes,只要以上命令都能在不输入密码的情况下,执行完毕,说明设置是对的.



方法2:
我采用的是ssh,具体过程有很多文档说明,这里省略.分别要建立root用户,oracle用户的互信.
#cp /etc/hosts.allow /etc/hosts.allow.bak
#gedit /etc/hosts.allow
添加 sshd:ALL
# /etc/rc.d/init.d/sshd restart

1. 分别从rac1和rac2上登录作为root后运行ssh-keygen,目的是简单地在/root下创建目录.ssh,当提示输入
  passphase时打入两次回车.这将生成/root/.ssh/identity and /root/.ssh/identity.pub
  
2. 先测试一下,从rac1登录作为root,打入#ssh rac2,会要求提示root password.   
3. 现在从rac1登录作为root,运行scp /root/.ssh/id_rsa.pub rac2:/root/.ssh/authorized_keys. ,
  文件名必须不能弄错.

4.现在再从rac1运行#ssh rac2则不需要密码了:)
同理rac2 也是这样的(重复第3步)

具体的指令如下:
rac1上,以root用户登录
#ssh-keygen 输入两次回车
#scp /root/.ssh/id_rsa.pub rac1:/root/.ssh/authorized_keys
输入密码
#scp /root/.ssh/id_rsa.pub rac2:/root/.ssh/authorized_keys

rac2上,以root用户登录
#ssh-keygen 输入两次回车
#scp /root/.ssh/id_rsa.pub rac2:/root/.ssh/authorized_keys1
输入密码
#cd /root/.ssh
#cat authorized_keys1>>authorized_keys
#scp /root/.ssh/id_rsa.pub rac1:/root/.ssh/authorized_keys1

rac1上,以root用户登录
#cd /root/.ssh
#cat authorized_keys1>>authorized_keys

rac1上,以oracle用户登录
$ssh-keygen 输入两次回车
$scp /home/oracle/.ssh/id_rsa.pub rac1:/home/oracle/.ssh/authorized_keys
输入密码
$scp /home/oracle/.ssh/id_rsa.pub rac2:/home/oracle/.ssh/authorized_keys

rac2上,以oracle用户登录
$ssh-keygen 输入两次回车
$scp /home/oracle/.ssh/id_rsa.pub rac2:/home/oracle/.ssh/authorized_keys1
输入密码
$cd /home/oracle/.ssh
$cat authorized_keys1>>authorized_keys
$scp /home/oracle/.ssh/id_rsa.pub rac1:/home/oracle/.ssh/authorized_keys1

rac1上,以oracle用户登录
$cd /home/oracle/.ssh
$cat authorized_keys1>>authorized_keys


然后在分别以root用户,oracle在两个节点上执行如下命令 ,
ssh localhost.localdomain date
ssh rac1 date
ssh rac2 date
ssh rac1-priv date
ssh rac2-priv date
ssh rac1.localdomain date
ssh rac2.localdomain date
ssh rac1-priv.localdomain date
ssh rac2-priv.localdomain date
如果需要输入(yes/no)?输入yes,测试完所有命令,如果都不要输密码,就配置成功了.


12、建立节点时间同步
a、两台计算机以rac1为时间标准
在rac1上,以root用户登录
# cd /etc/xinetd.d
# cp time-stream time-stream.bak
# gedit time-stream
把disable = yes改成 disable = no
# service xinetd restart
# rdate -s rac1
# hwclock -w
就可以了.

在rac2上,以root用户登录
# rdate -s rac1
# hwclock -w
就可以了.

这时也可以把rac2的校时服务开启
# cd /etc/xinetd.d
# cp time-stream time-stream.bak
# gedit time-stream
把disable = yes改成 disable = no
# service xinetd restart
# rdate -s rac1
# hwclock -w
就可以了.
b、系统启动后,rac1向ntp server校时 (由于和本机同步,所以不用ntp校时了,b这一步可以不做)
在rac1上,以root用户登录
#crontab -e
//crontab -l 是列出任务
//crontab -r 是删除所有任务
添加如下内容:
* * * * * /usr/sbin/ntpdate time.stdtime.gov.tw | hwclock -w
意思是,每分钟更新时间一次.
#date 09010000
#service crond restart
就可以看效果了.
c、系统启动后,rac2向rac1校时
在rac2上,以root用户登录
在/etc/rc.d/init.d/下写一个脚本
#cd /etc/rc.d/init.d/
#gedit uptimefromrac1
内容:
#!/bin/bash
/etc/rc.d/init.d/uptimefromrac_1 &
然后:
#gedit uptimefromrac_1
内容:
#!/bin/bash
while(true;)
do
rdate -s rac1
sleep 20
done
然后:
#chmod 777 uptimefromrac1
#chmod 777 uptimefromrac_1
# ln -s /etc/rc.d/init.d/uptimefromrac1 /etc/rc.d/rc5.d/S99uptimefromrac1
这样rac2每20秒钟与rac1同步一次时间或者简单点
#crontab -e
* * * * * rdate -s rac1 | hwclock -w(可以crontab被启动的时机是root用户登录的时机,所以系统启动后,crontab不会被运行,只能用脚本了)


13、把网卡绑定mac地址(rac1,rac2上,都要执行)
在桌面上选择 系统-->管理-->网络
选择eth0-->硬件设备--> 关联到MAC地址
选择eth1-->硬件设备--> 关联到MAC地址
然后点击 确定.
merryboy 2008-09-18
  • 打赏
  • 举报
回复
五、安装Oracle Rac前的系统准备
1、修改/etc/hosts文件,如下所示
# cp /etc/hosts /etc/hosts.bak
# gedit /etc/hosts
127.0.0.1 localhost.localdomain localhost(这里必须这样修改,否则RAC节点名出现在回送地址中,安装RAC期间可能会报错)
192.168.1.100 rac1.localdomain rac1
192.168.1.101 rac2.localdomain rac2

10.0.0.1 rac1-priv.localdomain rac1-priv
10.0.0.2 rac2-priv.localdomain rac2-priv

192.168.1.200 rac1-vip.localdomain rac1-vip
192.168.1.201 rac2-vip.localdomain rac2-vip


2、编辑/etc/sysconfig/network文件
# cp /etc/sysconfig/network /etc/sysconfig/network.bak
# gedit /etc/sysconfig/network
把hostname=localhost.localdomain改成hostname=rac1.localdomain

3、在桌面上选择 系统-->管理-->网络
把eth0 的自动获取ip地址,改成静态地址192.168.1.100 255.255.255.0
先激活eth1,然后再把eth1 的自动获取ip地址,改成静态地址10.0.0.1 255.255.255.0
注:在eth1里面要选择 当计算机启动时激活设备(A) ,不然的话,系统启动后,eth1是不会自动启动的.

4、设置共享内存和信号参数

执行一下命令:
#cp /etc/sysctl.conf /etc/sysctl.conf.bak
#gedit /etc/sysctl.conf

编辑/etc/sysctl.conf文件,添加如下信息,这些信息可以根据自己的机器实际情况来调整 (1048576=1G存储空间=1024*1024 262144=256M)
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=262144
net.core.wmem_max=262144

kernel.shmmni = 4096
kernel.sem = 250 32000 100 128

fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000

5. 配置 hangcheck-timer 内核模块
该模块是用来监控集群的状态情况,linux as4中已经安装了此模块,使用下面的命令确认
find /lib/modules -name "hangcheck-timer.o" 看看有没有,如果有,配置并加载该模块
#echo "/sbin/modprobe hangcheck-timer" >> /etc/rc.local
#modprobe hangcheck-timer
#grep Hangcheck /var/log/messages | tail -2
Jul 31 15:01:49 ha2pub kernel: Hangcheck: starting hangcheck timer 0.5.0 (tick is 30 seconds, margin is 180 seconds).
如果看到上面的信息,说明模块的设置工作正确
配置Hangcheck计时器
# cd /etc/rc.d/
# cp rc.local rc.local.bak
# gedit rc.local
在最后面添加新的一行:
modprobe hangcheck-timer hangcheck-tick=30 hangcheck_margin=180

6. 在节点上创建oracle用户和目录
#groupadd -g 1002 oinstall
#groupadd -g 1001 dba
#useradd -u 1001 -g oinstall -G dba oracle
#passwd oracle
# id nobody 查看是否存在匿名用户,如不存在则创建.
以oracle用户登陆,分别建立两个目录
# su - oracle
$mkdir /home/oracle/app 用于安装oracle 数据库
$mkdir /home/oracle/orcl 用于Oracle 集群文件系统 (OCFS) 的挂载点

修改oracle用户的.bash_profile文件如下所示
__________________________________________________________________
# .bash_profile

export ORACLE_BASE=/home/oracle/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORA_CRS_HOME=/home/oracle/app/crs/
export ORACLE_SID=RAC1

export PATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin
export PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
export PATH=${PATH}:$ORACLE_BASE/common/oracle/bin
export ORACLE_TERM=xterm
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORA_NLS10=$ORACLE_HOME/nls/data
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export CLASSPATH=$ORACLE_HOME/JRE
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export THREADS_FLAG=native
export TEMP=/tmp
export TMPDIR=/tmp
export NLS_LANG=american_america.ZHS16GBK

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH

ulimit -u 16384 -n 65536


******************************************************
以下的不用加
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
________________________________________________________________________
注意,在第二个节点上,修改SID=RAC2

7、安装所需的rpm包(在安装光盘下)
compat-db-4.2.52-5.1.i386.rpm
compat-gcc-34-3.4.6-4.i386.rpm
compat-gcc-34-c++-3.4.6-4.i386.rpm
compat-libgcc-296-2.96-138.i386.rpm
compat-libstdc++-296-2.96-138.i386.rpm
compat-libstdc++-33-3.2.3-61.i386.rpm
fontconfig-devel-2.4.1-7.el5.i386.rpm
freetype-devel-2.2.1-19.el5.i386.rpm
libaio-0.3.106-3.2.i386.rpm
libaio-devel-0.3.106-3.2.i386.rpm
libXp-1.0.0-8.1.el5.i386.rpm
openmotif22-2.2.3-18.i386.rpm
openmotif-2.3.0-0.5.el5.i386.rpm

命令如下:
#cd /media/CentOS_5.2_Final/CentOS
#rpm -ivh compat-db-4.2.52-5.1.i386.rpm
...
以下的命令类似,安装完所有上面所列出的包

8、配置shell对oracle的限制
# cd /etc/security/
# cp limits.conf limits.conf.bak
# gedit limits.conf
在最后面添加新的一行:
#For Oracle
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft memlock 3145728
oracle hard memlock 3145728

* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536

以上的限制需要启用pam模块的一个选项
# cd /etc/pam.d/
# cp login login.bak
# gedit login
在最后面添加新的一行:
#For Oracle
session required /lib/security/pam_limits.so



# cp /etc/selinux/config /etc/selinux/config.bak
# gedit /etc/selinux/config
SELINUX=disabled

9、关闭系统,将centosrac1拷贝一份(整个文件夹),把名字改成centosrac2 ,是把Other Linux 2.6.x kernel.vmx中的displayName = "centosrac1"改成displayName = "centosrac2"
#init 0

10.单独启动 centosrac2,修改ip地址和hostname
a、编辑/etc/sysconfig/network文件
把hostname=rac1.localdomain改成hostname=rac2.localdomain

b、在桌面上选择 系统-->管理-->网络
把eth0 的静态地址192.168.1.100 改成 192.168.1.101
把eth1 的的静态地址10.0.0.1 改成 10.0.0.2
注:在eth1里面要选择 当计算机启动时激活设备(A) ,不然的话,系统启动后,eth1是不会自动启动的.

c、在第二个节点上,修改/etc/oracle/.bash_profile 中ORACLE_SID=orcl2
merryboy 2008-09-18
  • 打赏
  • 举报
回复
a、CentOS 在 VMware下,如何联网到Internet的解决办法
1、我的ADSL的IP地址是 192.168.1.1
2、配置静态IP,子网掩码,网关是
192.168.1.100
255.255.255.0
192.168.1.1
3、主DNS配置的是192.168.1.1
4、操作系统重新启动就可上网了.
步骤:
系统 --> 管理 --> 网络 --> 双击 eth0 --> 选择 静态设置的IP地址 -->
按照上面的地址信息配置 --> 硬件设备 --> 取消 关联到MAC 地址的选项-->确定
--> DNS --> 主 DNS :192.168.1.1
这里需要把eth1配静态IP,子网掩码
10.0.0.1 255.255.255.0 配置,选择 当计算机启动时激活设备(A), 取消 关联到MAC 地址的选项
eth0配置完新的IP地址,需要取消激活,然后再激活,就能用新的IP地址了.
eth1激活,就能用新的IP地址了.
重新启动操作系统
# reboot
# ping www.sohu.com

b、VMware Server 1.0.6虚拟机Centos OS5.2系统时间同步的问题
1、升级并安装gcc和 kernel-devel(要保证操作系统能访问互联网)
# yum install gcc kernel-devel
Is this ok [y/N] : y
Is this ok [y/N] : y
2、检查内核是否一致,这里肯定不一致
# uname -r
2.6.28-92.e15
# rpm -q kernel-devel
kernel-devel-2.6.28-92.e15
kernel-devel-2.6.28-92.1.10.e15
3、下载新的内核,并安装
# yum -y upgrade kernel kernel-devel
# reboot
4、验证是否安装好了新内核
# ls -d /usr/src/kernels/$(uname -r)*/include
应该出现类似2.6.18-92.1.10.e15内核的信息
5、在CentOS重新启动后,把虚拟机安装虚拟工具进行安装,go to VM> Install VMware Tools... --> Install
(如果CentOS光盘还没有退出,可能无法运行虚拟机工具,init 0系统,手动取消CentOS系统光盘(选择Use physical drive:),再启动系统,就可以安装虚拟工具了)
# cd /media/VMware Tools
6、安装虚拟工具
# cp VMwareTools-1.0.6-91891.tar.gz /tmp
# cd /tmp
# tar -zxf VMwareTools-1.0.6-91891.tar.gz
# rm -rf VMwareTools-1.0.6-91891.tar.gz
# cd /tmp/vmware-tools-distrib
# ./vmware-install.pl
7、一切按回车进行安装,选择分辨率时可以是3(推荐),也可以是2
8、修改/etc/X11/xorg.conf文件
# cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bak
# gedit /etc/X11/xorg.conf
新添加以下内容:
Section "Monitor"
Identifier "vmware"
EndSection

Section "InputDevice"
Identifier "Mouse0"
Driver "vmmouse"
Option "Protocol" "Auto"
Option "Device" "/dev/input/mouse0"
EndSection

然后找到 含有"ServerLayout" 的section在Section跟EndSection之间加上以下一行:
InputDevice "Mouse0" "CorePointer"
最后重新启动操作系统
9、使用虚拟工具
# cd /usr/bin
# vmware-toolbox
或者
(我的CPU是Intel 32位的P4 2.8GHz的处理器,所以选择bin32,如果你的CPU是AMD 64/Intel 64位的处理器,估计要选择bin64文件夹下的vmware-toolbox,估计,我没有测试过)
# cd /tmp/vmware-tools-distrib/lib/bin32
# ./vmware-toolbox


选择 第一页的
Time synchrononiztion between the virtual machine and the host operating system.
前面的按钮按下去.

10、修改/boot/grub/grub.conf文件
# cp /boot/grub/grub.conf /boot/grub/grub.conf.bak
# gedit /boot/grub/grub.conf
将kernel /vmlinuz-2.6.18-92.1.10.el15 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
修改成 kernel /vmlinuz-2.6.18-92.1.10.el15 ro root=/dev/VolGroup00/LogVol00 rhgb quiet clock=pit nosmp noapic nolapic

11、修改文件:C:\Documents and Settings\All Users\Application Data\VMware\VMware Server\config.ini
添加如下三行:
host.cpukHz = "2800000"
host.noTSC = "TRUE"
ptsc.noTSC = "TRUE"
其中:host.cpukHz要根据你的cpu的实际主频修改,例子中表示CPU主频是2.8G。

12、遇到 设备eth0似乎不在,将要推迟它的初始化 的解决办法:
# depmod
# reboot
就可以了。
13、测试一下:
# date 09010000
一会,你发现系统时间自动被改回来,就安装成功了.


c、CentOS 5.2_FTP设置的问题
步骤如下:
1、运行yum install vsftpd命令(如果有the yum lock警告出现,你把那个告诉你的pid,kill掉就能用yum命令了.)
具体的细节如下:
[root@localhost ~]# yum install vsftpd
都选择 y
2、将 /etc/vsftpd/user_list文件和/etc/vsftpd/ftpusers文件中的root这一行注释掉
# root
需要执行的具体命令是:
#cp /etc/vsftpd/user_list /etc/vsftpd/user_list.bak
#cp /etc/vsftpd/ftpusers /etc/vsftpd/ftpusers.bak
#gedit /etc/vsftpd/user_list 把root这一行改成 #root
#gedit /etc/vsftpd/ftpusers 把root这一行改成 #root
3、执行以下命令
# setsebool -P ftpd_disable_trans=1
如果 SELinux关闭的话,上面的命令无法执行,那么请运行ntsysv,选择vsftpd这个前面加个 *,那么ftp在系统启动后,会自动启动.
这里把防火也也可以关闭了.把iptables前面的*,取消掉.

4、service vsftpd restart

ftp服务器就可以使用了.

d、CentOS 5.2_Telnet设置的问题
1、安装软件(前提是把光盘加载到系统上,如果加不上,关闭系统再加上光盘后,再启动系统)
[root@localhost CentOS]# cd /media/CentOS_5.2_Final/CentOS
[root@localhost CentOS]# rpm -ivh xinetd-2.3.14-10.e15.i386.rpm
[root@localhost CentOS]# service xinetd start
[root@localhost CentOS]# rpm -ivh telnet-server-0.17-39.el5.i386.rpm
[root@localhost CentOS]# chkconfig telnet on

2、启动telnet服务
  
  1、开启服务
  方法一:使用ntsysv,在出现的窗口之中,将 telnet 勾选起来,然后按下 OK 即可 !
  方法二:编辑 /etc/xinetd.d/telnet
  [root@localhost root]# vi /etc/xinetd.d/telnet
  找到 disable = yes<==就是改这里,将 yes 改成 no 即可!服务预设是关闭的
方法三:使用chkconfig命令直接开启
  [root@localhost root]# chkconfig telnet on
  2、激活服务
  telnet 是挂在 xinetd 底下的,所以自然只要重新激活 xinetd 就能够将 xinetd 里头的设定重新读进来,所以刚刚设定的 telnet 自然也就可以被激活.
  [root@localhost CentOS]# service xinetd restart
或者[root@localhost CentOS]# /etc/rc.d/init.d/xinetd restart #这个是比较正规的方法


允许root用户登入,可用下列方法
开启root用户的telnet功能
1、编辑/etc/default/login文件.(如果没有,就创建一个login文件)
添加内容:CONSOLE=/dev/console
2、编辑/etc/securetty 文件 (先要备份securetty文件:cp securetty securetty.bak)
,加上下面几行(最后面添加):
pts/0
pts/1
pts/2
pts/3 

  这样一来, root 将可以直接进入 Linux 主机.不过,建议不要这样做.还可以在普通用户进入后,切换到root用户,拥有root的权限!

不用重新启动服务xinetd,就能有效

e、CentOS 5.2_Xmanager设置的问题
1、编辑/etc/gdm/custom.conf,内容如下:(需要先备份文件)
[daemon]

[security]
AllowRemoteRoot=true

[xdmcp]
Port=177
Enable=1

[gui]

[greeter]

[chooser]

[debug]

[servers]

2、关闭防火墙,不关的话,用不起
#ntsysv 选择iptables ,ip6tables把前面的*号去掉

3、重新启动系统就可以了.

f、备份CentOS 5.2系统后,网卡设置的问题

在桌面上选择 系统-->管理-->网络
选择eth0-->硬件设备-->不要 关联到MAC地址
这样,关闭系统,就可以备份新的系统,新的系统中的网卡就不会出现4个了eth0 eth0.bak eth1 eth1.bak,这些bak文件有问题,无法关闭,如果系统在 不要 关联到MAC地址 这个选项没有选的话,新的拷贝系统就不会出问题了.

g、激活CentOS 5.2第二个网卡的问题
在桌面上选择 系统-->管理-->网络
在eth1里面要选择 当计算机启动时激活设备(A) ,不然的话,系统启动后,eth1是不会自动启动的.

解决完以上问题
现在的系统具备:以root用户登录ftp,telnet,XMangaer

h、sendmail启动时间过长的问题
那就关闭它
# ntsysv
取消sendmail前面的*

重新启动操作系统
本系列课程分为,0-理论知识部分    0.1-oca_ocp_ocm相关知识内容(uploading)1-安装部分     1.1单实例命令行安装     1.2单实例图形安装     1.3rac安装     1.4rac(pdb架构)+dg 单实例安装(用rman的duplicate和rman备份2种方式搭建dg)     1.5rac(pdb架构)+rac dg2-迁移部分    2.1单实例之间的迁移    2.2单实迁移到rac    2.3rac迁移到单实例    2.4racrac之间的迁移。    2.5关于xtts的迁移方法的使用3-恢复部分   3.1单实例本地恢复   3.2rac本地恢复4-数据库升级部分   4.1 19.3升级到19.13   4.2 12.1.0.2升级到19.3   4.3 12.2.0.1升级到19.3   4.4 19.3的rac升级到19.135-数据库优化部分    5.1如何看懂执行计划    5.2 hash, nest loop,  merge的执行计划各自适用于那种场景?    5.3为什么要用直方图,19c的直方图有frency, balance,  top-frenkency, hybrid?允许最大的bucket是多少?6-数据库asm磁盘操作部分   6-1如何用一条命令迁移rac存储。   6-2如何用笨方法迁移rac存储。   6-3目前asm磁盘是external冗余级别,如何修改为normal的冗余级别。7-数据库工具部分   7.1oem如何进行安装,如何进行纳管数据库,如何使用   7.2如何用oem监控数据库 8-综合实战。   a库是11.2.0.3的单实例数据库,容量有20T。   b库是19.13的rac环境的pdb数据库,容量只有21T.   如何把a库的数据迁移到b库的pdb数据库?   这个综合实战非常考验大家,基本上囊括了数据库复制安装,数据库dg,数据库升级的方方面面。   大家可以自己先想想怎么实现。一课程主题手把手带大家进行实操,在实操中提升自己手把手带大家学习orace 19的ocm课程,学完本课程,至少具有3-5年oracle数据库水平。文档和视频is uploading. 二课程特色 学oracle,找阿伟阿伟出品,必属精品从实战出发,贴近实战,自己实战,实战为王,在实战中提升自己授人以鱼不如授人以渔通过此系列课程可以提高3-5年oracle水平交个朋友,物有所值,诚意满满走心课程,把自己在运维中的坑,提炼知识后,实战给大家 三课程内容 0.理论知识部分(上传中。。。)   0.1数据库监听(动态监听,静态监听,多个ip同时监听1521,一个ip监听多个service_name)   0.2rman 命令中的set rename datafile和 alter database  rename datafile 有啥区别?   0.3    ............1.数据库单实例安装  1.0 安装检查    1.0.1安装包检查    1.0.2修改系统参数    1.0.3数据库用户创建    1.0.4创建目录    1.0.5上传安装软件包    1.0.6修改oracle用户环境变量  1.1 rhel7系统图形安装oracle 19c单实例数据库  1.2 rhel7系统命令行安装       1.2.0命令行安装数据库软件       1.2.1命令行创建non cdb数据库实例       1.2.2命令行创建 cdb数据库实例2.rac数据库安装    1.课程结束成果演示          1.1 用workstation,安装一套rhel7+oracle19c+rac+multipath+共享存储+DNS服务器+DNS客户端+NTP服务器+NTP客户端的生产环境          1.2 怎样打oracle19c的rac补丁(包括GI补丁,oracle补丁,数据库补丁,OJVM补丁,bug补丁)     2.安装openfiler软件,模拟共享存储+配置多路径访问       2.1安装openfiler软件       2.2配置openfiler软件(配置2个虚拟网卡,模拟服务器的2个HBA卡)        2.3创建ocr磁盘       2.4创建mgmt磁盘       2.5创建数据文件磁盘       2.6创建归档日志磁盘     3.安装2台数据库服务器       3.1安装2台数据库服务器RHEL7.5       3.2配置服务器双网卡绑定+配置服务器心跳线     4.安装多路径软件识别共享存储中的磁盘        4.1安装服务器本地yum源        4.2安装iscsi软件,配置多路径配置文件,识别共享存储中的磁盘        4.3识别ocr磁盘        4.4识别mgmt磁盘        4.5识别数据文件磁盘        4.6识别归档日志磁盘     5.oracle19c的rac环境系统参数官方说明        5.1如何配置oracle19c的rac的系统参数(我们参考官方说明)        5.2oracle19c+rac环境Best Practices 官方说明文档     6.安装oracle19c+rac之前的准备工作        6.1修改/etc/hosts文件        6.2配置DNS服务器+DNS客户端+NTP服务器+NTP客户端        6.3创建用户和组        6.4创建目录        6.5修改用户环境变量        6.6安装相关软件包        6.7配置ssh互信        6.9禁用服务器透明大页     7.安装oracle+19c+rac软件       7.1安装GI软件       7.2创建ASM磁盘,主要是数据文件磁盘和归档日志磁盘       7.3安装数据库软件       7.4创建数据库实例       7.5日常常用维护集群命令(启停数据库,启停集群,查看监听,教同学们怎样不死记命令,而且命令还正确)     8.打补丁     8.1打GI和ORACLE的操作系统补丁      8.2打OJVM补丁      8.3打ORA600的bug补丁     9.课程总结和成果演示     9.1课程总结和成果演示3.rac+dg(单实例)数据库安装(pdb架构)     3.1.1dg知识点讲解     3.1.2配置dg监听,密码文件,参数文件。     3.1.2通过rman的duplicate命令进行dg搭建1。     3.1.3通过rman的duplicate命令进行dg搭建2     3.1.4进行数据库切换需要的配置。     3.1.5数据库正常switch over     3.1.6数据库如何fail over     3.1.7dg库failover以后通过闪回快速恢复dg     3.1.8dg库failover以后通过新主库的控制文件快速恢复dg     3.1.9备库归档缺失如何进行解决。     3.1.10recover database和recover standby database是否可以在dg中使用?     3.1.11如何通过rman的备份进行搭建dg。     3.1.12dg库使用静态监听无法监听pdb数据库的service问题如何进行解决?   4.rac+rac dg的实战步骤(pdb架构)(上传中。。。)5.19c单实例数据库通过rman备份进行异机迁移到单实例数据库     5.1通过备份脚本进行数据,归档,控制文件备份     5.2通过备份脚本进行归档,控制文件备份       (注意源库备份目录是/backup/db和/backup/ar)     5.3传输备份文件到目标库        (传输备份文件到目标库的/home/oracle/bk目录)     5.4利用参数文件启动数据库到nomount     5.5利用备份集恢复控制文件,并启动数据库到mount     5.6通过restore database恢复数据库        5.6.1注册目标库备份集到控制文件        5.6.2启动数据库到mount状态,确定recover database的序列号     5.7recover database        5.7.1通过rman 进行recover database        5.7.2通过sql 命令行进行 recover database;     5.8.打开数据库          5.8.1解决打开数据库后,sys用户无法远程监听登录问题          5.8.2修改数据库动态参数启动数据库     5.9.备份的扩展             5.9.1如何知道备份集里面有哪些归档             5.9.2如何从这些备份集中提取归档             5.9.3进行异机数据库迁移时,如何逐步应用归档,并且如何open read only数据库后,继续应用归档             5.9.4为何要进行 open read only进行提前打开验证。               5.10.rman迁移备份的补充             5.10.1如何再rman中设置数据文件,在线日志生成路径。               类似如下命令                    run  6单实例数据库无数据丢失通过rman备份异机迁移到rac数据库和rac数据库通过rman迁移到rac数据库      6.1单实例源库进行数据库升级           19.3的源库升级到19.13版本(包括打数据库补丁和ojvm补丁)      6.2.传输备份文件到目标库           传输备份文件到目标库的/home/oracle/bk目录     6.3.利用参数文件启动数据库到nomount     6.4.利用备份集恢复控制文件,并启动数据库到mount        6.5.通过restore database恢复数据库           注册目标库备份集到控制文件           启动数据库到mount状态,确定recover database的序列号     6.6.recover database          通过rman 进行recover database          通过sql 命令行进行 recover database;     6.7.单实例数据库恢复完成后,配置为rac数据库           注册数据库到集群          修改数据库参数文件到asm     6.8.迁移rac数据库到rac数据库。           单实例数据库异机迁移到rac和,rac数据库异机迁移到rac有啥不一样。           根据上面理论,实施rac数据库异机恢复到rac7数据库本地恢复系列     7.1单实例数据库本地恢复     7.2rac数据库本地恢复8综合实战(uploading)     7.1实战课题:        有一台11.2.0.3的单实例数据库A,数据库容量有20T,无备份。        如何迁移到新搭建的rac环境B(数据库版本是19.13),并且是迁移到rac的pdb数据库中,并且rac数据库的asm容量只有21T.        这次实战包含的知识点。        1-如何在环境B复制数据库A的软件,最好进行复制,因为数据库A的11.2.0.3打了很多补丁,如果安装11.2.0.3软件,会造成版本不一致。        2-如何搭建11.2.0.3的单实例dg。        3-dg归档缺失如何解决。        4-如何升级11.2.0.3单实例到11.2.0.4单实例        5-如何升级11.2.0.4单实例到19.3单实例        6-如何升级19.3单实例到19.13单实例。        7-如何迁移19.13单实例数据库到19.13的rac的pdb数据库中。9数据库升级系列     8.1 单实例19c数据库升级到19.13版本。     8.2 单实例12.2.0.1数据库升级到19.13版本。     8.3 单实例12.1.0.2数据库升级到19.13版本。     8.4 19c数据库rac升级到19.13版本。
JSONObject必包的Jar包及json生成的简单案例 所有commons包的网址: http://commons.apache.org/index.html 组装和解析JSONObject的Json字符串,共需要下面六个包: 1、json-lib 2、commons-beanutils 3、commons-collections 4、commons-lang 5、commons-logging 6、ezmorph 第零个包: json-lib-2.4-jdk15.jar http://sourceforge.net/projects/json-lib/files/json-lib/json-lib-2.4/ 下载地址:http://nchc.dl.sourceforge.net/project/json-lib/json-lib/json-lib-2.4/json-lib-2.4-jdk15.jar 第一个包: commons-beanutils-1.9.2.jar http://commons.apache.org/proper/commons-beanutils/download_beanutils.cgi 下载地址:http://mirrors.cnnic.cn/apache//commons/beanutils/binaries/commons-beanutils-1.9.2-bin.zip 第二个包: (注:此包不可用,改用旧包) commons-collections4-4.0.jar http://commons.apache.org/proper/commons-collections/download_collections.cgi 下载地址:http://apache.dataguru.cn//commons/collections/binaries/commons-collections4-4.0-bin.zip (注:此包可用,低版本的包稳定性更高) commons-collections-3.2.1.jar http://commons.apache.org/proper/commons-collections/download_collections.cgi 下载地址:http://mirrors.hust.edu.cn/apache//commons/collections/binaries/commons-collections-3.2.1-bin.zip 第三个包: (注:此包不可用,会造成程序出错,改用旧包) commons-lang3-3.3.2.jar http://commons.apache.org/proper/commons-lang/download_lang.cgi 下载地址:http://apache.dataguru.cn//commons/lang/binaries/commons-lang3-3.3.2-bin.zip (注:此包可用,低版本的包稳定性更高) commons-lang-2.6-bin http://commons.apache.org/proper/commons-lang/download_lang.cgi?Preferred=http%3A%2F%2Fapache.dataguru.cn%2F 下载地址:http://apache.dataguru.cn//commons/lang/binaries/commons-lang-2.6-bin.zip 第四个包: commons-logging-1.1.3.jar http://commons.apache.org/proper/commons-logging/download_logging.cgi 下载地址:http://apache.dataguru.cn//commons/logging/binaries/commons-logging-1.1.3-bin.zip 第五个包: ezmorph-1.0.2.jar http://ezmorph.sourceforge.net/ http://sourceforge.net/projects/ezmorph/files/ezmorph/ 下载地址:http://nchc.dl.sourceforge.net/project/ezmorph/ezmorph/ezmorph-1.0.6/ezmorph-1.0.6.jar

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧