千家信息网

RHEL + Oracle 11g + udev + ASM实验扩展

发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,最近一段时间在刻苦的学习Oracle的体系结构等理论知识,在这里总结一些知识,以及自己在此做个实验扩展巩固最近所学的知识。实验环境 Redhat Enterprise Linux 6.5 x86_64
千家信息网最后更新 2024年11月23日RHEL + Oracle 11g + udev + ASM实验扩展

最近一段时间在刻苦的学习Oracle的体系结构等理论知识,在这里总结一些知识,以及自己在此做个实验扩展巩固最近所学的知识。

实验环境

 Redhat Enterprise Linux 6.5 x86_64    IP地址:192.168.60.100 Oracle 11g release 11.2.0.4

系统安装在此略过,IP地址已经更改完成,首先通过ssh协议登陆到RHEL系统,配置YUM本地源环境,安装Oracle所必须的软件依赖包;

[c:\~]$ ssh root@192.168.60.100[root@rhel6 ~]# vi /etc/yum.conf[local]                                             //修改本地YUM源环境;name=localbaseurl=file:///mntgpgcheck=0enabled=1[root@rhel6 ~]# mount /dev/sr0 /mnt/                //挂载本地光盘作为YUM源;mount: block device /dev/sr0 is write-protected, mounting read-only[root@rhel6 ~]# yum repolist                        //检测本地YUM源配置是否正确;Loaded plugins: product-id, refresh-packagekit, security,              : subscription-managerThis system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.local                                        | 3.9 kB     00:00 ... local/primary_db                             | 3.1 MB     00:00 ... repo id                         repo name                     statuslocal                           local                         3,690repolist: 3,690[root@rhel6 ~]#yum install binutils -y            //通过YUM安装Oracle所必须的软件包;[root@rhel6 ~]#yum install compat-libcap1 -y[root@rhel6 ~]#yum install compat-libstdc++-33 -y[root@rhel6 ~]#yum install gcc -y[root@rhel6 ~]#yum install gcc-c++ -y[root@rhel6 ~]#yum install glibc -y[root@rhel6 ~]#yum install glibc-devel -y[root@rhel6 ~]#yum install ksh -y[root@rhel6 ~]#yum install libgcc -y[root@rhel6 ~]#yum install libstdc++ -y[root@rhel6 ~]#yum install libstdc++-devel -y[root@rhel6 ~]#yum install libaio -y[root@rhel6 ~]#yum install libaio-devel -y[root@rhel6 ~]#yum install libXext -y[root@rhel6 ~]#yum install libXtst -y[root@rhel6 ~]#yum install libX11 -y[root@rhel6 ~]#yum install libXau -y[root@rhel6 ~]#yum install libxcb -y[root@rhel6 ~]#yum install libXi -y[root@rhel6 ~]#yum install make -y[root@rhel6 ~]#yum install sysstat -y[root@rhel6 ~]#yum install unixODBC -y[root@rhel6 ~]#yum install unixODBC-devel -y

修改相应的系统主机名以及IP地址

[root@rhel6 ~]# vi /etc/hosts 127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4192.168.60.100  rhel6

添加相应的grid用户及用户组

[root@rhel6 ~]# groupadd -g 501 oinstall[root@rhel6 ~]# groupadd -g 502 dba[root@rhel6 ~]# groupadd -g 503 oper[root@rhel6 ~]# groupadd -g 504 asmadmin[root@rhel6 ~]# groupadd -g 505 asmoper[root@rhel6 ~]# groupadd -g 506 asmdba[root@rhel6 ~]# useradd -g oinstall -G dba,asmdba,oper oracle[root@rhel6 ~]# useradd -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid[root@rhel6 ~]# passwd oracle[root@rhel6 ~]# passwd grid

创建Grid Infrastructure组件安装目录

[root@rhel6 ~]# mkdir -p /u01/app/grid[root@rhel6 ~]# mkdir -p /u01/app/11.2.0/grid[root@rhel6 ~]# chown -R grid:oinstall /u01[root@rhel6 ~]# mkdir -p /u01/app/oraInventory[root@rhel6 ~]# chown -R grid:oinstall /u01/app/oraInventory[root@rhel6 ~]# mkdir -p /u01/app/oracle[root@rhel6 ~]# chown -R oracle:oinstall /u01/app/oracle[root@rhel6 ~]# chmod -R 775 /u01

修改操作系统参数

[root@rhel6 ~]# vi /etc/security/limits.confgrid       soft   nproc   2047 grid       hard   nproc   16384grid       soft   nofile  1024grid       hard   nofile  65536grid       soft   stack   10240grid       hard   stack   32768oracle     soft   nproc   2047oracle     hard   nproc   16384oracle     soft   nofile  1024oracle     hard   nofile  65536oracle     soft   stack   10240oracle     hard   stack   32768

修改Linux服务器ulmits限制

[root@rhel6 ~]# vi /etc/security/limits.d/90-nproc.conf#*          soft    nproc     1024* - nproc 16384

禁用SELINUX安全限制

[root@rhel6 ~]# vi /etc/selinux/configSELINUX=disabled                                //修改配置文件永久关闭selinux;[root@rhel6 ~]# setenforce 0

关闭IPTABLES防火墙

[root@rhel6 ~]# service iptables stopiptables: Setting chains to policy ACCEPT: filter          [  OK  ]iptables: Flushing firewall rules:                         [  OK  ]iptables: Unloading modules:                               [  OK  ] [root@rhel6 ~]# chkconfig --level 35 iptables off          //3、5级别永久关闭iptables;

修改Linux操作系统的登陆配置文件

[root@rhel6 ~]# vi /etc/pam.d/loginsession    required     pam_limits.so

修改Linux系统内核Kernel配置

[root@rhel6 ~]# vi /etc/sysctl.conf#kernel.shmmax = 68719476736                //注释掉原先的系统的配置;#kernel.shmall = 4294967296fs.aio-max-nr = 1048576fs.file-max = 6815744kernel.shmmax = 858993459                   //大于SGA,小于物理内存;kernel.shmall = 1048576                     //物理内存%4K;kernel.shmmni = 4096kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 262144net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 1048586[root@rhel6 ~]# sysctl -p

配置grid和oracle用户的环境变量

[root@rhel6 ~]# su - grid                        //grid用户环境变量配置;[grid@rhel6 ~]$ vi .bash_profile PS1="[`whoami`@`hostname`:"'$PWD]$'export PS1umask 022export TMP=/tmpexport LANG=en_USexport TMPDIR=$TMPexport ORACLE_HOSTNAME=rhel6ORACLE_SID=+ASM; export ORACLE_SIDORACLE_TERM=xterm; export ORACLE_TERMORACLE_BASE=/u01/app/grid; export ORACLE_BASEORACLE_HOME=/u01/app/11.2.0/grid; export ORACLE_HOMENLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"; export NLS_DATE_FORMATPATH=.:$PATH:$HOME/bin:$ORACLE_HOME/bin; export PATHTHREADS_FLAG=native; export THREADS_FLAGif [ $USER = "oracle" ] || [ $USER = "grid" ]; then        if [ $SHELL = "/bin/ksh" ]; then            ulimit -p 16384              ulimit -n 65536  else   ulimit -u 16384 -n 65536      fi    umask 022fi----------------------------------------------------------------------------[root@rhel6 ~]# su - oracle[oracle@rhel6 ~]$ vi .bash_profile TMP=/tmp; export TMPTMPDIR=$TMP; export TMPDIRexport LANG=en_USORACLE_BASE=/u01/app/oracle; export ORACLE_BASEORACLE_HOME=$ORACLE_BASE/product/11.2.0; export ORACLE_HOMEORACLE_SID=itpuxdb; export ORACLE_SIDexport ORACLE_UNQNAME=orclORACLE_TERM=xterm; export ORACLE_TERMPATH=/usr/sbin:$PATH; export PATHPATH=$ORACLE_HOME/bin:$PATH; export PATHLD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATHCLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATHNLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"; export NLS_DATE_FORMATNLS_LANG=AMERICAN_AMERICA.ZHS16GBK;export NLS_LANGif [ $USER = "oracle" ] || [ $USER = "grid" ]; then        if [ $SHELL = "/bin/ksh" ]; then         ulimit -p 16384              ulimit -n 65536        else              ulimit -u 16384 -n 65536        fi        umask 022fi

配置udev配置ASM(在此系统所用磁盘为/dev/sda),

[root@rhel6 ~]# fdisk /dev/(sdb\sdc\sdd\sde\sdf)          //对磁盘进行分区;[root@rhel6 ~]# vi /etc/udev/rules.d/99-oracle-asmdevices.rulesKERNEL=="sdb1", NAME="asm_grid1", OWNER="grid", GROUP="asmadmin", MODE="0660"KERNEL=="sdc1", NAME="asm_system", OWNER="grid", GROUP="asmadmin", MODE="0660"KERNEL=="sdd1", NAME="asm_recovery", OWNER="grid", GROUP="asmadmin", MODE="0660"KERNEL=="sde1", NAME="asm_data01", OWNER="grid", GROUP="asmadmin", MODE="0660"KERNEL=="sdf1", NAME="asm_data02", OWNER="grid", GROUP="asmadmin", MODE="0660"[root@rhel6 ~]# partprobe /dev/sdb1[root@rhel6 ~]# partprobe /dev/sdc1[root@rhel6 ~]# partprobe /dev/sdd1[root@rhel6 ~]# partprobe /dev/sde1[root@rhel6 ~]# partprobe /dev/sdf1[root@rhel6 ~]# udevadm control --reload-rules [root@rhel6 ~]# start_udev Starting udev:                                             [  OK  ][root@rhel6 ~]# ls -lsa /dev/asm*0 brw-rw----. 1 grid asmadmin 8, 65 May 24 05:48 /dev/asm_data010 brw-rw----. 1 grid asmadmin 8, 81 May 24 05:48 /dev/asm_data020 brw-rw----. 1 grid asmadmin 8, 17 May 24 05:48 /dev/asm_grid10 brw-rw----. 1 grid asmadmin 8, 49 May 24 05:48 /dev/asm_recovery0 brw-rw----. 1 grid asmadmin 8, 33 May 24 05:48 /dev/asm_system

上传Oracle安装包到服务器

[root@rhel6 ~]#yum -y install lrzsz            //安装xshell所用的FTP软件;[root@rhel6 ~]#unzip  p13390677_112040_Linux-x86-64_3of7.zip [root@rhel6 ~]# chown -R grid:oinstall  /opt/grid/

配置VNC远程桌面

[root@rhel6 ~]# yum -y install vnc-server[root@rhel6 opt]# su - grid[grid@rhel6:/home/grid]$vncserver You will require a password to access your desktops.Password:Verify:xauth:  creating new authority file /home/grid/.XauthorityNew 'rhel6:1 (grid)' desktop is rhel6:1Creating default startup script /home/grid/.vnc/xstartupStarting applications specified in /home/grid/.vnc/xstartupLog file is /home/grid/.vnc/rhel6:1.log

VNC远程桌面连接配置安装Grid Infrastructure组件

[grid@rhel6 ~]$ cd /opt/grid/[grid@rhel6 grid]$ ./runInstaller

选择单节点安装配置Grid Infrastructure

选择语言环境

扫描ASM磁盘

配置统一的账户密码

环境变量配置正确的情况下会自动识别用户组

配置安装目录(可手动调整)

检测依赖包等信息后,出现警告(因测试虚拟机内存较少,未能达到Oracle推荐值这里可以忽略)

执行所要求的脚本

[root@rhel6 ~]# /u01/app/oraInventory/orainstRoot.shChanging permissions of /u01/app/oraInventory.Adding read,write permissions for group.Removing read,write,execute permissions for world.Changing groupname of /u01/app/oraInventory to oinstall.The execution of the script is complete.[root@rhel6 ~]# /u01/app/11.2.0/grid/root.shPerforming root user operation for Oracle 11gThe following environment variables are set as:    ORACLE_OWNER= grid    ORACLE_HOME=  /u01/app/11.2.0/gridEnter the full pathname of the local bin directory: [/usr/local/bin]:    Copying dbhome to /usr/local/bin ...   Copying oraenv to /usr/local/bin ...   Copying coraenv to /usr/local/bin ...Creating /etc/oratab file...Entries will be added to the /etc/oratab file as needed byDatabase Configuration Assistant when a database is createdFinished running generic part of root script.Now product-specific root actions will be performed.Using configuration parameter file: /u01/app/11.2.0/grid/crs/install/crsconfig_paramsCreating trace directoryLOCAL ADD MODE Creating OCR keys for user 'grid', privgrp 'oinstall'..Operation successful.LOCAL ONLY MODE Successfully accumulated necessary OCR keys.Creating OCR keys for user 'root', privgrp 'root'..Operation successful.CRS-4664: Node rhel6 successfully pinned.Adding Clusterware entries to upstartrhel6     2017/05/24 07:14:47     /u01/app/11.2.0/grid/cdata/rhel6/backup_20170524_071447.olrSuccessfully configured Oracle Grid Infrastructure for a Standalone Server

配置安装成功

配置安装Oracle 客户端

[root@rhel6 opt]# su - oracle[oracle@rhel6 ~]$ vncserverYou will require a password to access your desktops.Password:Verify:xauth:  creating new authority file /home/oracle/.XauthorityNew 'rhel6:2 (oracle)' desktop is rhel6:2Creating default startup script /home/oracle/.vnc/xstartupStarting applications specified in /home/oracle/.vnc/xstartupLog file is /home/oracle/.vnc/rhel6:2.log [root@rhel6 opt]# unzip p13390677_112040_Linux-x86-64_1of7.zip [root@rhel6 opt]# unzip p13390677_112040_Linux-x86-64_2of7.zip [root@rhel6 opt]# chown -R oracle.oinstall database/

VNC远程桌面安装Oracle软件

[oracle@rhel6 database]$ ./runInstaller

选择只安装Oracle软件(后续再建实例)

选择单实例节点安装

选择安装企业版

Oracle数据库软件安装位置(环境变量读取正确不需要修改)

由于测试环境内存偏小,所以这里可以忽略警告继续安装

以root用户执行所需的脚本

[root@rhel6 tmp]# /u01/app/oracle/product/11.2.0/root.shPerforming root user operation for Oracle 11gThe following environment variables are set as:    ORACLE_OWNER= oracle    ORACLE_HOME=  /u01/app/oracle/product/11.2.0Enter the full pathname of the local bin directory: [/usr/local/bin]: The contents of "dbhome" have not changed. No need to overwrite.The contents of "oraenv" have not changed. No need to overwrite.The contents of "coraenv" have not changed. No need to overwrite.Entries will be added to the /etc/oratab file as needed byDatabase Configuration Assistant when a database is createdFinished running generic part of root script.Now product-specific root actions will be performed.Finished product-specific root actions.

安装完成

Oracle和ASM配置安装完成接下来安装配置ASM,建instance

以grid用户远程桌面登陆,配置ASM磁盘

[grid@rhel6:/home/grid]$asmca

以oracle用户远程桌面登陆,配置创建数据库

[oracle@rhel6 database]$ dbca

选择创建数据库

由于这里是实验环境选择第一项

配置instance名

由于这里是实验环境,选择启用OEM,不勾选快速闪回

配置统一的密码

在此选择ASM磁盘而非file system,选择创建的ASM磁盘组

实验环境勾选实例

配置SGA、PGA空间大小,配置中文字符集ZHFS16GBK,配置并发连接数,配置专用共享池

在此可配置数据文件大小以及自动扩展、redo log组配置,(实验环境在此不做过多配置)

在此可将数据配置文件等信息导出(方便后续文档撰写)

创建数据库中...

数据库安装完成

以grid用户查看集群状态及监听状态

[grid@rhel6:/home/grid]$crsctl status resource -t--------------------------------------------------------------------------------NAME           TARGET  STATE        SERVER                   STATE_DETAILS       --------------------------------------------------------------------------------Local Resources--------------------------------------------------------------------------------ora.DATA.dg               ONLINE  ONLINE       rhel6                                        ora.DSG.dg               ONLINE  ONLINE       rhel6                                        ora.LISTENER.lsnr               ONLINE  ONLINE       rhel6                                        ora.asm               ONLINE  ONLINE       rhel6                    Started             ora.ons               OFFLINE OFFLINE      rhel6                                        --------------------------------------------------------------------------------Cluster Resources--------------------------------------------------------------------------------ora.cssd      1        ONLINE  ONLINE       rhel6                                        ora.diskmon      1        OFFLINE OFFLINE                                                   ora.evmd      1        ONLINE  ONLINE       rhel6                                        ora.orcl.db      1        ONLINE  ONLINE       rhel6                    Open            ------------------------------------------------------------------------      [grid@rhel6:/home/grid]$lsnrctl statusLSNRCTL for Linux: Version 11.2.0.4.0 - Production on 24-MAY-2017 08:28:36Copyright (c) 1991, 2013, Oracle.  All rights reserved.Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))STATUS of the LISTENER------------------------Alias                     LISTENERVersion                   TNSLSNR for Linux: Version 11.2.0.4.0 - ProductionStart Date                24-MAY-2017 07:15:42Uptime                    0 days 1 hr. 12 min. 53 secTrace Level               offSecurity                  ON: Local OS AuthenticationSNMP                      OFFListener Parameter File   /u01/app/11.2.0/grid/network/admin/listener.oraListener Log File         /u01/app/grid/diag/tnslsnr/rhel6/listener/alert/log.xmlListening Endpoints Summary...  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=rhel6)(PORT=1521)))Services Summary...Service "+ASM" has 1 instance(s).  Instance "+ASM", status READY, has 1 handler(s) for this service...Service "orcl" has 1 instance(s).  Instance "orcl", status READY, has 1 handler(s) for this service...Service "orclXDB" has 1 instance(s).  Instance "orcl", status READY, has 1 handler(s) for this service...The command completed successfully

以oracle用户登录连接数据库,查询表空间

[oracle@rhel6 database]$ sqlplus / as sysdba  SQL*Plus: Release 11.2.0.4.0 Production on Wed May 24 08:27:56 2017Copyright (c) 1982, 2013, Oracle.  All rights reserved.Connected to:Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit ProductionWith the Partitioning, Automatic Storage Management, OLAP, Data Miningand Real Application Testing options SQL> select * from V$TABLESPACE;       TS# NAME      INC BIG FLA ENC---------- ------------------------------ --- --- --- ---  0 SYSTEM     YES NO  YES  1 SYSAUX     YES NO  YES  2 UNDOTBS1     YES NO  YES  4 USERS     YES NO  YES  3 TEMP      NO  NO  YES  6 EXAMPLE     YES NO  YES6 rows selected.

在此,Rhel Linux环境下的udev + ASM Oracle 11gR2安装部署完成,状态正常。

0