注意:oracle 11g要想使用asm,必須首先要安裝grid 軟件,再安裝oracle軟件。
1.配置系統網絡:
設置節點的ip:ip 不能衝突。
a.修改主機名:/etc/sysconfig/network ,不用設置網關。
注意:搭好rac以後主機名是不允許修改的。
NETWORKING=yes
NEWWORKING_IPV6=no
HOSTNAME=yueasm
b.設置ip地址:
公共網卡:/etc/sysconfig/network-scripts/ifcfg-eth0
設置靜態ip,設置子網掩碼,設置網關
[root@yue2 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
# Intel Corporation 82540EM Gigabit Ethernet ControllerDEVICE=eth0BOOTPROTO=staticIPADDR=192.168.3.32NETMASK=255.255.255.0GATEWAY=192.168.3.1ONBOOT=yesc.重啓網絡服務: service network restart
2.掛載磁盤:用於安裝數據庫軟件
fdisk -l
fdisk /dev/sdb #分區 並使用主分區。
mkfs.ext3 /dev/sdb1 #格式化
mount /dev/sdb1 /u01 #掛載到u01目錄上
修改/etc/fstab #設置爲開機掛載
3.配置安裝環境
3.1.建立用戶和組:
[root@node1 ~]# groupadd -g 200 oinstall
[root@node1 ~]# groupadd -g 201 dba
[root@node1 ~]# groupadd -g 202 oper
[root@node1 ~]# groupadd -g 203 asmadmin
[root@node1 ~]# groupadd -g 204 asmoper
[root@node1 ~]# groupadd -g 205 asmdba
[root@node1 ~]#
[root@node1 ~]# useradd -u 200 -g oinstall -G dba,asmdba,oper oracle
[root@node1 ~]# su - oracle
[oracle@node1 ~]$ id
uid=200(oracle) gid=200(oinstall) groups=200(oinstall),201(dba),202(oper),205(asmdba)
[root@node1 ~]# useradd -u 201 -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid
#設置密碼 密碼都爲oracle
[root@node1 ~]# passwd oracle
[root@node1 ~]# passwd grid
建立用戶組和建立用戶時 ,兩個節點上的用戶和組的id號要相同。 (因爲節點要做NFS共享)
例:groupadd -g 200 oinstall #-g 指定組id id號0到99 是系統用戶的。
grid用戶作用:管理集羣和管理共享存儲
3.2.創建目錄:
mkdir -p /u01/app/oraInventory
chown -R grid:oinstall /u01/app/oraInventory/
chmod -R 775 /u01/app/oraInventory/
mkdir -p /u01/11.2.0/grid
chown -R grid:oinstall /u01/11.2.0/grid/
chmod -R 775 /u01/11.2.0/grid/
mkdir -p /u01/app/oraInventory/
mkdir -p /u01/app/oracle
mkdir -p /u01/app/oracle/cfgtoollogs
mkdir -p /u01/app/oracle/product/11.2.0/db_1
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/app/oracle
3.3.修改oracle用戶的環境變量
在/home/oracle/.bash_profile 文件中添加如下內容:
export EDITOR=vi
export ORACLE_SID=yueasm
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib # 該配置會導致下面報錯詳見下文
export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
umask 022
3.4.修改grid用戶的環境變量:
在/home/grid/.bash_profile 文件中添加如下內容:
export EDITOR=vi
export ORACLE_SID=+ASM
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/11.2.0/grid
export GRID_HOME=/u01/11.2.0/grid
export LD_LIBRARY_PATH=$ORACLE_HOME/lib # 該配置會導致下面報錯詳見下文
export THREADS_FLAG=native
export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
umask 022
3.5.設置網絡環境: 修改hosts文件
[root@yue1 ~]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost
192.168.3.54 yueasm
3.5.修改內核參數:
a.修改/etc/sysctl.conf 添加如下:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
-------內核參數修改生效
[root@node1 ~]# sysctl -p
b.修改/etc/security/limits.conf 添加如下內容:
[root@node1 ~]# cat /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
grid soft stack 10240
c.修改/etc/pam.d/login 文件,添加如下一行:
session required /lib/security/pam_limits.so
d.修改/etc/profile 文件 添加如下內容:
if [ $USER = "oracle" ]||[ $USER = "grid" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
3.6.調整swap區
[root@yue1 ~]# free -m
total used free shared buffers cached
Mem: 1582 1300 282 0 29 1137
-/+ buffers/cache: 133 1449
Swap: 2047 0 2047
#創建一個空文件, bs指定塊大小,count指定塊的數量。of 指定生成目錄
[root@yue1 ~]# dd if=/dev/zero of=/u01/swf1 bs=1024k count=2048
2048+0 records in
2048+0 records out
2147483648 bytes (2.1 GB) copied, 19.3151 seconds, 111 MB/s
[root@yue1 ~]# mkswap -c /u01/swf1
Setting up swapspace version 1, size = 2147479 kB
[root@yue1 ~]# swapon /u01/swf1
[root@yue1 ~]# free -m
total used free shared buffers cached
Mem: 1582 1541 40 0 5 1400
-/+ buffers/cache: 136 1446
Swap: 4095 0 4095
#防止系統重啓以後swap區變回原來的大小,修改/etc/fstab文件追加如下一行。
[root@yue1 ~]# vi /etc/fstab
/u01/swf1 swap swap defaults 0 0
3.7.安裝 os的軟件:
需要安裝的軟件:
binutils-2.17.50.0.6 compat-libstdc++-33-3.2.3 compat-libstdc++-33-3.2.3 (32 bit) elfutils-libelf-0.125 elfutils-libelf-devel-0.125 gcc-4.1.2 gcc-c++-4.1.2 glibc-2.5-24 glibc-2.5-24 (32 bit) glibc-common-2.5 glibc-devel-2.5 glibc-devel-2.5 (32 bit) glibc-headers-2.5 ksh-20060214 libaio-0.3.106 libaio-0.3.106 (32 bit) libaio-devel-0.3.106 libaio-devel-0.3.106 (32 bit) libgcc-4.1.2 libgcc-4.1.2 (32 bit) libstdc++-4.1.2 libstdc++-4.1.2 (32 bit) libstdc++-devel 4.1.2 make-3.81 sysstat-7.0.2 unixODBC-2.2.11 unixODBC-2.2.11 (32 bit) unixODBC-devel-2.2.11 unixODBC-devel-2.2.11 (32 bit)
binutils-2.17.50.0.6 compat-libstdc++-33-3.2.3 compat-libstdc++-33-3.2.3 (32 bit) elfutils-libelf-0.125 elfutils-libelf-devel-0.125 gcc-4.1.2 gcc-c++-4.1.2 glibc-2.5-24 glibc-2.5-24 (32 bit) glibc-common-2.5 glibc-devel-2.5 glibc-devel-2.5 (32 bit) glibc-headers-2.5 ksh-20060214 libaio-0.3.106 libaio-0.3.106 (32 bit) libaio-devel-0.3.106 libaio-devel-0.3.106 (32 bit) libgcc-4.1.2 libgcc-4.1.2 (32 bit) libstdc++-4.1.2 libstdc++-4.1.2 (32 bit) libstdc++-devel 4.1.2 make-3.81 sysstat-7.0.2 unixODBC-2.2.11 unixODBC-2.2.11 (32 bit) unixODBC-devel-2.2.11 unixODBC-devel-2.2.11 (32 bit)
#這個幾個軟件在操作系統的安裝包中有,掛載操作系統的安裝包。右擊如圖小圖標->選一個虛擬光盤->找到安裝包添加進去。
#掛載安裝軟件到media目錄下
[root@yue1 ~]# mount /dev/cdrom /media/
[root@yue1 ~]# ls /media/
#搭建YUM倉庫 解決安裝的依賴關係:
[root@yue1 ~]# cd /etc/yum.repos.d/
[root@yue1 yum.repos.d]# ll
total 8
-rw-r--r-- 1 root root 561 Mar 10 2010 rhel-debuginfo.repo
[root@yue1 yum.repos.d]# cp rhel-debuginfo.repo yum.repo
#修改倉庫文件,爲如下內容
[root@yue1 yum.repos.d]# vi yum.repo
[base]
name=Red Hat Enterprise Linux
baseurl=file:///media/Server
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
#安裝軟件命令:
[root@yue1 yum.repos.d]# yum install -y libaio*
[root@yue1 yum.repos.d]# yum install -y sysstat*
[root@yue1 yum.repos.d]# yum install -y unix*
[root@yue1 yum.repos.d]# yum install -y vnc* #安裝vnc
4.設置共享存儲:ASMlib 管理磁盤。
(可以使用通過asm、ocfs、raw、nfs 方式實現貢獻存儲,oracle推薦使用asm,這裏使用ASM)。
①.磁盤設置:(對磁盤進行分區)
a.存放database 需要2個分區
c.存放 recovery area 需要2個分區。
由上面得出:2個主分區(各5g),1個擴展分區,擴展分區再分成2個邏輯分區。
Device Boot Start End Blocks Id System
/dev/sdc1 1 609 4891761 83 Linux
/dev/sdc2 610 1218 4891792+ 83 Linux
/dev/sdc3 1219 2610 11181240 5 Extended
/dev/sdc5 1219 1827 4891761 83 Linux
/dev/sdc6 1828 2436 4891761 83 Linux
/dev/sdc7 2437 2610 1397623+ 83 Linux
# /dev/sdc1,/dev/sdc2,/dev/sdc5,/dev/sdc6
四個磁盤大小爲5g。
②.安裝asm軟件: 只有linux 和windows 系統需要安裝軟件,安裝下面三個軟件。
[root@yueasm asm]# uname -r
2.6.18-194.el5
[root@yue1 asm]# ls
oracleasm-2.6.18-194.el5-2.0.5-1.el5.i686.rpm #要與上面的內核版本對應。
oracleasmlib-2.0.4-1.el5.i386.rpm
oracleasm-support-2.1.3-1.el5.i386.rpm
#安裝軟件,
[root@yueasm asm]# rpm -ivh *.rpm
③.建立ASM disk
#配置asm (service oracleasm configure命令
等同於 /etc/init.d/oracleasm configure 命令)
[root@yueasm asm]# service oracleasm configure
Configuring the Oracle ASM library driver.
This will configure the on-boot properties of the Oracle ASM library
driver. The following questions will determine whether the driver is
loaded on boot and what permissions it will have. The current values
will be shown in brackets ('[]'). Hitting <ENTER> without typing an
answer will keep that current value. Ctrl-C will abort.
Default user to own the driver interface []: grid
Default group to own the driver interface []: asmadmin
Start Oracle ASM library driver on boot (y/n) [n]: y
Scan for Oracle ASM disks on boot (y/n) [y]:
Writing Oracle ASM library driver configuration: done
Initializing the Oracle ASMLib driver: [ OK ]
Scanning the system for Oracle ASMLib disks: [ OK ]
[root@yueasm asm]# service oracleasm #查看asm所有命令
Usage: /etc/init.d/oracleasm {start|stop|restart|enable|disable|configure|createdisk|deletedisk|querydisk|listdisks|scandisks|status}
#建立ASM磁盤
[root@yueasm asm]# service oracleasm createdisk ASM_DSK1 /dev/sdc1
Marking disk "ASM_DSK1" as an ASM disk: [ OK ]
[root@yueasm asm]# service oracleasm createdisk ASM_DSK2 /dev/sdc2
Marking disk "ASM_DSK2" as an ASM disk: [ OK ]
[root@yueasm asm]# service oracleasm createdisk ASM_DSK3 /dev/sdc5
Marking disk "ASM_DSK3" as an ASM disk: [ OK ]
[root@ yueasm asm]# service oracleasm createdisk ASM_DSK4 /dev/sdc6
Marking disk "ASM_DSK4" as an ASM disk: [ OK ]
[root@yueasm asm]# service oracleasm listdisks #查看asm磁盤
ASM_DSK1
ASM_DSK2
ASM_DSK3
ASM_DSK4
ASM_DSK5
[root@ yueasm asm]# ls -l /dev/oracleasm/disks/ #查看asm磁盤的設備文件
total 0
brw-rw---- 1 grid asmadmin 8, 33 Aug 30 17:07 ASM_DSK1
brw-rw---- 1 grid asmadmin 8, 34 Aug 30 17:08 ASM_DSK2
brw-rw---- 1 grid asmadmin 8, 37 Aug 30 17:08 ASM_DSK3
brw-rw---- 1 grid asmadmin 8, 38 Aug 30 17:08 ASM_DSK4
brw-rw---- 1 grid asmadmin 8, 39 Aug 30 17:09 ASM_DSK5
5.安裝GRID infrastructure: (grid用戶安裝)
10g 是單獨安裝CRS
11g 是構建GI架構時會自安裝CRS
①.使用VNC安裝GI架構 .
#啓動vnc服務,並設置密碼爲oracle
[root@yue1 ~]# vncserver
You will require a password to access your desktops.
Password:
Verify:
xauth: creating new authority file /root/.Xauthority
New 'yue1:1 (root)' desktop is yue1:1
Creating default startup script /root/.vnc/xstartup
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/yue1:1.log
#在瀏覽器輸入如下地址: 並輸入設置的密碼登陸vnc。 前提是系統要安裝jdk軟件,否則打不開vnc
#vnc中完成如下命令:
[root@yueasm ~]$ xhost + #在允許任何用戶訪問服務器
[root@ yueasm ~]$ su - grid #切換成grid用戶安裝grid架構
[grid@ yueasm ~]$ cd /u01/soft/grid
#進入grid軟件放置的目錄
[grid@ yueasm ~]$ ./runInstaller #運行安裝軟件的腳本,出現圖形化的安裝界面
#選擇單機
#語言
#創建asm 磁盤:(這一步的創建磁盤不知是什麼用途?): 用於存儲OCR等。
Redundancy: high:要5塊盤,normal:要3塊盤,external:要1塊盤。
#指定asm 密碼 ,提示密碼簡單 直接”yes“
#指點組,
#指定安裝位置, 這裏會提示 [INS-32018] ,是因爲grid用戶的變臉的問題,沒影響。
#安裝前檢查
按順序執行兩個腳本:
[root@yueasm ~]# /u01/app/oraInventory/orainstRoot.sh
(裏面直接回車)
[root@yueasm ~]# /u01/11.2.0/grid/root.sh
執行兩個腳本完成後點擊“ok”。
#安裝完成:
#設置一個環境變量,用於root用戶能使用grid的命令:
[root@yue1 ~]# vi /etc/profile
export PATH=$PATH:/u01/11.2.0/grid/bin
快速生效
[root@yue1 ~]# source /etc/profile
#登錄asm,說明GI安裝成功。
[grid@yueasm grid]$ sqlplus / as sysasm
SQL*Plus: Release 11.2.0.1.0 Production on Sat Aug 30 19:19:57 2014
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Automatic Storage Management option
#查看磁盤組狀態
SQL> select name, state from v$asm_diskgroup;
NAME STATE
------------------------------ -----------
COR_VOTE MOUNTED
6.安裝oracle軟件(oracle 用戶安裝)
6.1.解壓oracle軟件
[root@yueasm soft]# unzip linux_11gR2_database_1of2.zip ; unzip linux_11gR2_database_2of2.zip
6.2.在vnc中使用oracle用戶安裝oracle軟件
#vnc中完成如下命令:
[grid@yueasm ~]# su
- oracle
[oracle@yueasm ~]# cd
/u01/soft/database
[oracle@yueasm ~]# ./runInstaller
##建立郵件,去掉下面的選框
#只安裝軟件
#單實例數據庫
#選擇數據庫版本:
#執行腳本 第一次提示直接回車,其餘三次輸入:y
[root@yueasm soft]# /u01/app/oracle/product/11.2.0/db_1/root.sh
#完成
7.創建asm磁盤組 (使用grid用戶創建,可以使用命令和圖形界面,這裏使用圖形界面)
建立三個asm磁盤組,ocr_vote已經在之前的步驟中創建了,存放database和recover
area 的磁盤組在這裏創建
#使用vnc創建磁盤組,在vnc完成下面命令:
[oracle@yue1 ~]# su - grid #切換成grid用戶
[grid@yue1 ~]# asmca #使用 asmca 命令
#創建磁盤組,點 “create”
# 添加磁盤組dg1:選擇如圖,點擊'ok'
redundancy : high:需要3塊盤,normal :需要2塊盤,external :需要1塊盤。
#出現了新添加的DG1磁盤組,狀態爲 MOUNTED
#再創建一個磁盤組 rcy1 ,點擊“create”,
# 創建完成,點擊“exit”。
②.上面執行完以後,使用sql命令檢查磁盤狀態:
[root@yueasm ~]# su - grid
#登錄asm實例
[grid@yueasm ~]$ sqlplus '/as sysasm'
SQL*Plus: Release 11.2.0.1.0 Production on Sat Aug 16 16:46:53 2014
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Real Application Clusters and Automatic Storage Management options
SQL> show parameter name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_unique_name string +ASM
instance_name string +ASM
lock_name_space string
service_names string +ASM
#查看磁盤組狀態, 都問mount狀態即可
SQL> select name,state from v$asm_diskgroup;
NAME STATE
------------------------------ -----------
OCR_VOTE MOUNTED
DG1 MOUNTED
RCY1 MOUNTED
8.dbca 創建數據庫 (使用oracle 用戶執行)
#使用vnc 創建數據庫:在vnc下執行如下命令:
[grid@yueasm ~]# su - oracle
[oracle@yueasm ~]# dbca #dbca建庫
#實例名稱爲 yueasm
#配置em
#密碼
#指定存儲數據文件的類型和位置
#指定ASMSNMP 的密碼
#指定閃回區, 選擇RCY1
#選擇例子schema
#指定sga 爲400m
#設置字符集, 爲:ZHS16GBK-
#點擊 finish
#點擊ok
#安裝時報錯:
解決:
分別修改oracle用戶和grid用戶的用戶變量,
修改.bash_profile文件中的export LD_LIBRARY_PATH=$ORACLE_HOME/lib 修改爲:
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
如下:
#重新執行11步
1.配置系統網絡:
設置節點的ip:ip 不能衝突。
a.修改主機名:/etc/sysconfig/network ,不用設置網關。
注意:搭好rac以後主機名是不允許修改的。
NETWORKING=yes
NEWWORKING_IPV6=no
HOSTNAME=yueasm
b.設置ip地址:
公共網卡:/etc/sysconfig/network-scripts/ifcfg-eth0
設置靜態ip,設置子網掩碼,設置網關
[root@yue2 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
# Intel Corporation 82540EM Gigabit Ethernet ControllerDEVICE=eth0BOOTPROTO=staticIPADDR=192.168.3.32NETMASK=255.255.255.0GATEWAY=192.168.3.1ONBOOT=yesc.重啓網絡服務: service network restart
2.掛載磁盤:用於安裝數據庫軟件
fdisk -l
fdisk /dev/sdb #分區 並使用主分區。
mkfs.ext3 /dev/sdb1 #格式化
mount /dev/sdb1 /u01 #掛載到u01目錄上
修改/etc/fstab #設置爲開機掛載
3.配置安裝環境
3.1.建立用戶和組:
[root@node1 ~]# groupadd -g 200 oinstall
[root@node1 ~]# groupadd -g 201 dba
[root@node1 ~]# groupadd -g 202 oper
[root@node1 ~]# groupadd -g 203 asmadmin
[root@node1 ~]# groupadd -g 204 asmoper
[root@node1 ~]# groupadd -g 205 asmdba
[root@node1 ~]#
[root@node1 ~]# useradd -u 200 -g oinstall -G dba,asmdba,oper oracle
[root@node1 ~]# su - oracle
[oracle@node1 ~]$ id
uid=200(oracle) gid=200(oinstall) groups=200(oinstall),201(dba),202(oper),205(asmdba)
[root@node1 ~]# useradd -u 201 -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid
#設置密碼 密碼都爲oracle
[root@node1 ~]# passwd oracle
[root@node1 ~]# passwd grid
建立用戶組和建立用戶時 ,兩個節點上的用戶和組的id號要相同。 (因爲節點要做NFS共享)
例:groupadd -g 200 oinstall #-g 指定組id id號0到99 是系統用戶的。
grid用戶作用:管理集羣和管理共享存儲
3.2.創建目錄:
mkdir -p /u01/app/oraInventory
chown -R grid:oinstall /u01/app/oraInventory/
chmod -R 775 /u01/app/oraInventory/
mkdir -p /u01/11.2.0/grid
chown -R grid:oinstall /u01/11.2.0/grid/
chmod -R 775 /u01/11.2.0/grid/
mkdir -p /u01/app/oraInventory/
mkdir -p /u01/app/oracle
mkdir -p /u01/app/oracle/cfgtoollogs
mkdir -p /u01/app/oracle/product/11.2.0/db_1
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/app/oracle
3.3.修改oracle用戶的環境變量
在/home/oracle/.bash_profile 文件中添加如下內容:
export EDITOR=vi
export ORACLE_SID=yueasm
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib # 該配置會導致下面報錯詳見下文
export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
umask 022
3.4.修改grid用戶的環境變量:
在/home/grid/.bash_profile 文件中添加如下內容:
export EDITOR=vi
export ORACLE_SID=+ASM
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/11.2.0/grid
export GRID_HOME=/u01/11.2.0/grid
export LD_LIBRARY_PATH=$ORACLE_HOME/lib # 該配置會導致下面報錯詳見下文
export THREADS_FLAG=native
export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
umask 022
3.5.設置網絡環境: 修改hosts文件
[root@yue1 ~]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost
192.168.3.54 yueasm
3.5.修改內核參數:
a.修改/etc/sysctl.conf 添加如下:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
-------內核參數修改生效
[root@node1 ~]# sysctl -p
b.修改/etc/security/limits.conf 添加如下內容:
[root@node1 ~]# cat /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
grid soft stack 10240
c.修改/etc/pam.d/login 文件,添加如下一行:
session required /lib/security/pam_limits.so
d.修改/etc/profile 文件 添加如下內容:
if [ $USER = "oracle" ]||[ $USER = "grid" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
3.6.調整swap區
[root@yue1 ~]# free -m
total used free shared buffers cached
Mem: 1582 1300 282 0 29 1137
-/+ buffers/cache: 133 1449
Swap: 2047 0 2047
#創建一個空文件, bs指定塊大小,count指定塊的數量。of 指定生成目錄
[root@yue1 ~]# dd if=/dev/zero of=/u01/swf1 bs=1024k count=2048
2048+0 records in
2048+0 records out
2147483648 bytes (2.1 GB) copied, 19.3151 seconds, 111 MB/s
[root@yue1 ~]# mkswap -c /u01/swf1
Setting up swapspace version 1, size = 2147479 kB
[root@yue1 ~]# swapon /u01/swf1
[root@yue1 ~]# free -m
total used free shared buffers cached
Mem: 1582 1541 40 0 5 1400
-/+ buffers/cache: 136 1446
Swap: 4095 0 4095
#防止系統重啓以後swap區變回原來的大小,修改/etc/fstab文件追加如下一行。
[root@yue1 ~]# vi /etc/fstab
/u01/swf1 swap swap defaults 0 0
3.7.安裝 os的軟件:
需要安裝的軟件:
binutils-2.17.50.0.6 compat-libstdc++-33-3.2.3 compat-libstdc++-33-3.2.3 (32 bit) elfutils-libelf-0.125 elfutils-libelf-devel-0.125 gcc-4.1.2 gcc-c++-4.1.2 glibc-2.5-24 glibc-2.5-24 (32 bit) glibc-common-2.5 glibc-devel-2.5 glibc-devel-2.5 (32 bit) glibc-headers-2.5 ksh-20060214 libaio-0.3.106 libaio-0.3.106 (32 bit) libaio-devel-0.3.106 libaio-devel-0.3.106 (32 bit) libgcc-4.1.2 libgcc-4.1.2 (32 bit) libstdc++-4.1.2 libstdc++-4.1.2 (32 bit) libstdc++-devel 4.1.2 make-3.81 sysstat-7.0.2 unixODBC-2.2.11 unixODBC-2.2.11 (32 bit) unixODBC-devel-2.2.11 unixODBC-devel-2.2.11 (32 bit)
binutils-2.17.50.0.6 compat-libstdc++-33-3.2.3 compat-libstdc++-33-3.2.3 (32 bit) elfutils-libelf-0.125 elfutils-libelf-devel-0.125 gcc-4.1.2 gcc-c++-4.1.2 glibc-2.5-24 glibc-2.5-24 (32 bit) glibc-common-2.5 glibc-devel-2.5 glibc-devel-2.5 (32 bit) glibc-headers-2.5 ksh-20060214 libaio-0.3.106 libaio-0.3.106 (32 bit) libaio-devel-0.3.106 libaio-devel-0.3.106 (32 bit) libgcc-4.1.2 libgcc-4.1.2 (32 bit) libstdc++-4.1.2 libstdc++-4.1.2 (32 bit) libstdc++-devel 4.1.2 make-3.81 sysstat-7.0.2 unixODBC-2.2.11 unixODBC-2.2.11 (32 bit) unixODBC-devel-2.2.11 unixODBC-devel-2.2.11 (32 bit)
#這個幾個軟件在操作系統的安裝包中有,掛載操作系統的安裝包。右擊如圖小圖標->選一個虛擬光盤->找到安裝包添加進去。
#掛載安裝軟件到media目錄下
[root@yue1 ~]# mount /dev/cdrom /media/
[root@yue1 ~]# ls /media/
#搭建YUM倉庫 解決安裝的依賴關係:
[root@yue1 ~]# cd /etc/yum.repos.d/
[root@yue1 yum.repos.d]# ll
total 8
-rw-r--r-- 1 root root 561 Mar 10 2010 rhel-debuginfo.repo
[root@yue1 yum.repos.d]# cp rhel-debuginfo.repo yum.repo
#修改倉庫文件,爲如下內容
[root@yue1 yum.repos.d]# vi yum.repo
[base]
name=Red Hat Enterprise Linux
baseurl=file:///media/Server
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
#安裝軟件命令:
[root@yue1 yum.repos.d]# yum install -y libaio*
[root@yue1 yum.repos.d]# yum install -y sysstat*
[root@yue1 yum.repos.d]# yum install -y unix*
[root@yue1 yum.repos.d]# yum install -y vnc* #安裝vnc
4.設置共享存儲:ASMlib 管理磁盤。
(可以使用通過asm、ocfs、raw、nfs 方式實現貢獻存儲,oracle推薦使用asm,這裏使用ASM)。
①.磁盤設置:(對磁盤進行分區)
a.存放database 需要2個分區
c.存放 recovery area 需要2個分區。
由上面得出:2個主分區(各5g),1個擴展分區,擴展分區再分成2個邏輯分區。
Device Boot Start End Blocks Id System
/dev/sdc1 1 609 4891761 83 Linux
/dev/sdc2 610 1218 4891792+ 83 Linux
/dev/sdc3 1219 2610 11181240 5 Extended
/dev/sdc5 1219 1827 4891761 83 Linux
/dev/sdc6 1828 2436 4891761 83 Linux
/dev/sdc7 2437 2610 1397623+ 83 Linux
# /dev/sdc1,/dev/sdc2,/dev/sdc5,/dev/sdc6
四個磁盤大小爲5g。
②.安裝asm軟件: 只有linux 和windows 系統需要安裝軟件,安裝下面三個軟件。
[root@yueasm asm]# uname -r
2.6.18-194.el5
[root@yue1 asm]# ls
oracleasm-2.6.18-194.el5-2.0.5-1.el5.i686.rpm #要與上面的內核版本對應。
oracleasmlib-2.0.4-1.el5.i386.rpm
oracleasm-support-2.1.3-1.el5.i386.rpm
#安裝軟件,
[root@yueasm asm]# rpm -ivh *.rpm
③.建立ASM disk
#配置asm (service oracleasm configure命令
等同於 /etc/init.d/oracleasm configure 命令)
[root@yueasm asm]# service oracleasm configure
Configuring the Oracle ASM library driver.
This will configure the on-boot properties of the Oracle ASM library
driver. The following questions will determine whether the driver is
loaded on boot and what permissions it will have. The current values
will be shown in brackets ('[]'). Hitting <ENTER> without typing an
answer will keep that current value. Ctrl-C will abort.
Default user to own the driver interface []: grid
Default group to own the driver interface []: asmadmin
Start Oracle ASM library driver on boot (y/n) [n]: y
Scan for Oracle ASM disks on boot (y/n) [y]:
Writing Oracle ASM library driver configuration: done
Initializing the Oracle ASMLib driver: [ OK ]
Scanning the system for Oracle ASMLib disks: [ OK ]
[root@yueasm asm]# service oracleasm #查看asm所有命令
Usage: /etc/init.d/oracleasm {start|stop|restart|enable|disable|configure|createdisk|deletedisk|querydisk|listdisks|scandisks|status}
#建立ASM磁盤
[root@yueasm asm]# service oracleasm createdisk ASM_DSK1 /dev/sdc1
Marking disk "ASM_DSK1" as an ASM disk: [ OK ]
[root@yueasm asm]# service oracleasm createdisk ASM_DSK2 /dev/sdc2
Marking disk "ASM_DSK2" as an ASM disk: [ OK ]
[root@yueasm asm]# service oracleasm createdisk ASM_DSK3 /dev/sdc5
Marking disk "ASM_DSK3" as an ASM disk: [ OK ]
[root@ yueasm asm]# service oracleasm createdisk ASM_DSK4 /dev/sdc6
Marking disk "ASM_DSK4" as an ASM disk: [ OK ]
[root@yueasm asm]# service oracleasm listdisks #查看asm磁盤
ASM_DSK1
ASM_DSK2
ASM_DSK3
ASM_DSK4
ASM_DSK5
[root@ yueasm asm]# ls -l /dev/oracleasm/disks/ #查看asm磁盤的設備文件
total 0
brw-rw---- 1 grid asmadmin 8, 33 Aug 30 17:07 ASM_DSK1
brw-rw---- 1 grid asmadmin 8, 34 Aug 30 17:08 ASM_DSK2
brw-rw---- 1 grid asmadmin 8, 37 Aug 30 17:08 ASM_DSK3
brw-rw---- 1 grid asmadmin 8, 38 Aug 30 17:08 ASM_DSK4
brw-rw---- 1 grid asmadmin 8, 39 Aug 30 17:09 ASM_DSK5
5.安裝GRID infrastructure: (grid用戶安裝)
10g 是單獨安裝CRS
11g 是構建GI架構時會自安裝CRS
①.使用VNC安裝GI架構 .
#啓動vnc服務,並設置密碼爲oracle
[root@yue1 ~]# vncserver
You will require a password to access your desktops.
Password:
Verify:
xauth: creating new authority file /root/.Xauthority
New 'yue1:1 (root)' desktop is yue1:1
Creating default startup script /root/.vnc/xstartup
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/yue1:1.log
#在瀏覽器輸入如下地址: 並輸入設置的密碼登陸vnc。 前提是系統要安裝jdk軟件,否則打不開vnc
#vnc中完成如下命令:
[root@yueasm ~]$ xhost + #在允許任何用戶訪問服務器
[root@ yueasm ~]$ su - grid #切換成grid用戶安裝grid架構
[grid@ yueasm ~]$ cd /u01/soft/grid
#進入grid軟件放置的目錄
[grid@ yueasm ~]$ ./runInstaller #運行安裝軟件的腳本,出現圖形化的安裝界面
#選擇單機
#語言
#創建asm 磁盤:(這一步的創建磁盤不知是什麼用途?): 用於存儲OCR等。
Redundancy: high:要5塊盤,normal:要3塊盤,external:要1塊盤。
#指定asm 密碼 ,提示密碼簡單 直接”yes“
#指點組,
#指定安裝位置, 這裏會提示 [INS-32018] ,是因爲grid用戶的變臉的問題,沒影響。
#安裝前檢查
按順序執行兩個腳本:
[root@yueasm ~]# /u01/app/oraInventory/orainstRoot.sh
(裏面直接回車)
[root@yueasm ~]# /u01/11.2.0/grid/root.sh
執行兩個腳本完成後點擊“ok”。
#安裝完成:
#設置一個環境變量,用於root用戶能使用grid的命令:
[root@yue1 ~]# vi /etc/profile
export PATH=$PATH:/u01/11.2.0/grid/bin
快速生效
[root@yue1 ~]# source /etc/profile
#登錄asm,說明GI安裝成功。
[grid@yueasm grid]$ sqlplus / as sysasm
SQL*Plus: Release 11.2.0.1.0 Production on Sat Aug 30 19:19:57 2014
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Automatic Storage Management option
#查看磁盤組狀態
SQL> select name, state from v$asm_diskgroup;
NAME STATE
------------------------------ -----------
COR_VOTE MOUNTED
6.安裝oracle軟件(oracle 用戶安裝)
6.1.解壓oracle軟件
[root@yueasm soft]# unzip linux_11gR2_database_1of2.zip ; unzip linux_11gR2_database_2of2.zip
6.2.在vnc中使用oracle用戶安裝oracle軟件
#vnc中完成如下命令:
[grid@yueasm ~]# su
- oracle
[oracle@yueasm ~]# cd
/u01/soft/database
[oracle@yueasm ~]# ./runInstaller
##建立郵件,去掉下面的選框
#只安裝軟件
#單實例數據庫
#選擇數據庫版本:
#執行腳本 第一次提示直接回車,其餘三次輸入:y
[root@yueasm soft]# /u01/app/oracle/product/11.2.0/db_1/root.sh
#完成
7.創建asm磁盤組 (使用grid用戶創建,可以使用命令和圖形界面,這裏使用圖形界面)
建立三個asm磁盤組,ocr_vote已經在之前的步驟中創建了,存放database和recover
area 的磁盤組在這裏創建
#使用vnc創建磁盤組,在vnc完成下面命令:
[oracle@yue1 ~]# su - grid #切換成grid用戶
[grid@yue1 ~]# asmca #使用 asmca 命令
#創建磁盤組,點 “create”
# 添加磁盤組dg1:選擇如圖,點擊'ok'
redundancy : high:需要3塊盤,normal :需要2塊盤,external :需要1塊盤。
#出現了新添加的DG1磁盤組,狀態爲 MOUNTED
#再創建一個磁盤組 rcy1 ,點擊“create”,
# 創建完成,點擊“exit”。
②.上面執行完以後,使用sql命令檢查磁盤狀態:
[root@yueasm ~]# su - grid
#登錄asm實例
[grid@yueasm ~]$ sqlplus '/as sysasm'
SQL*Plus: Release 11.2.0.1.0 Production on Sat Aug 16 16:46:53 2014
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Real Application Clusters and Automatic Storage Management options
SQL> show parameter name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_unique_name string +ASM
instance_name string +ASM
lock_name_space string
service_names string +ASM
#查看磁盤組狀態, 都問mount狀態即可
SQL> select name,state from v$asm_diskgroup;
NAME STATE
------------------------------ -----------
OCR_VOTE MOUNTED
DG1 MOUNTED
RCY1 MOUNTED
8.dbca 創建數據庫 (使用oracle 用戶執行)
#使用vnc 創建數據庫:在vnc下執行如下命令:
[grid@yueasm ~]# su - oracle
[oracle@yueasm ~]# dbca #dbca建庫
#實例名稱爲 yueasm
#配置em
#密碼
#指定存儲數據文件的類型和位置
#指定ASMSNMP 的密碼
#指定閃回區, 選擇RCY1
#選擇例子schema
#指定sga 爲400m
#設置字符集, 爲:ZHS16GBK-
#點擊 finish
#點擊ok
#安裝時報錯:
解決:
分別修改oracle用戶和grid用戶的用戶變量,
修改.bash_profile文件中的export LD_LIBRARY_PATH=$ORACLE_HOME/lib 修改爲:
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
如下:
#重新執行11步