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 [email protected] [[email protected] ~]# vi /etc/yum.conf [local] //修改本地YUM源环境; name=local baseurl=file:///mnt gpgcheck=0 enabled=1 [[email protected] ~]# mount /dev/sr0 /mnt/ //挂载本地光盘作为YUM源; mount: block device /dev/sr0 is write-protected, mounting read-only [[email protected] ~]# yum repolist //检测本地YUM源配置是否正确; Loaded plugins: product-id, refresh-packagekit, security, : subscription-manager This 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 status local local 3,690 repolist: 3,690 [[email protected] ~]#yum install binutils -y //通过YUM安装Oracle所必须的软件包; [[email protected] ~]#yum install compat-libcap1 -y [[email protected] ~]#yum install compat-libstdc++-33 -y [[email protected] ~]#yum install gcc -y [[email protected] ~]#yum install gcc-c++ -y [[email protected] ~]#yum install glibc -y [[email protected] ~]#yum install glibc-devel -y [[email protected] ~]#yum install ksh -y [[email protected] ~]#yum install libgcc -y [[email protected] ~]#yum install libstdc++ -y [[email protected] ~]#yum install libstdc++-devel -y [[email protected] ~]#yum install libaio -y [[email protected] ~]#yum install libaio-devel -y [[email protected] ~]#yum install libXext -y [[email protected] ~]#yum install libXtst -y [[email protected] ~]#yum install libX11 -y [[email protected] ~]#yum install libXau -y [[email protected] ~]#yum install libxcb -y [[email protected] ~]#yum install libXi -y [[email protected] ~]#yum install make -y [[email protected] ~]#yum install sysstat -y [[email protected] ~]#yum install unixODBC -y [[email protected] ~]#yum install unixODBC-devel -y
修改相应的系统主机名以及IP地址
[[email protected] ~]# vi /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 192.168.60.100 rhel6
添加相应的grid用户及用户组
[[email protected] ~]# groupadd -g 501 oinstall [[email protected] ~]# groupadd -g 502 dba [[email protected] ~]# groupadd -g 503 oper [[email protected] ~]# groupadd -g 504 asmadmin [[email protected] ~]# groupadd -g 505 asmoper [[email protected] ~]# groupadd -g 506 asmdba [[email protected] ~]# useradd -g oinstall -G dba,asmdba,oper oracle [[email protected] ~]# useradd -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid [[email protected] ~]# passwd oracle [[email protected] ~]# passwd grid
创建Grid Infrastructure组件安装目录
[[email protected] ~]# mkdir -p /u01/app/grid [[email protected] ~]# mkdir -p /u01/app/11.2.0/grid [[email protected] ~]# chown -R grid:oinstall /u01 [[email protected] ~]# mkdir -p /u01/app/oraInventory [[email protected] ~]# chown -R grid:oinstall /u01/app/oraInventory [[email protected] ~]# mkdir -p /u01/app/oracle [[email protected] ~]# chown -R oracle:oinstall /u01/app/oracle [[email protected] ~]# chmod -R 775 /u01
修改操作系统参数
[[email protected] ~]# vi /etc/security/limits.conf grid soft nproc 2047 grid hard nproc 16384 grid soft nofile 1024 grid hard nofile 65536 grid soft stack 10240 grid hard stack 32768 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft stack 10240 oracle hard stack 32768
修改Linux服务器ulmits限制
[[email protected] ~]# vi /etc/security/limits.d/90-nproc.conf #* soft nproc 1024 * - nproc 16384
禁用SELINUX安全限制
[[email protected] ~]# vi /etc/selinux/config SELINUX=disabled //修改配置文件永久关闭selinux; [[email protected] ~]# setenforce 0
关闭IPTABLES防火墙
[[email protected] ~]# service iptables stop iptables: Setting chains to policy ACCEPT: filter [ OK ] iptables: Flushing firewall rules: [ OK ] iptables: Unloading modules: [ OK ] [[email protected] ~]# chkconfig --level 35 iptables off //3、5级别永久关闭iptables;
修改Linux操作系统的登陆配置文件
[[email protected] ~]# vi /etc/pam.d/login session required pam_limits.so
修改Linux系统内核Kernel配置
[[email protected] ~]# vi /etc/sysctl.conf #kernel.shmmax = 68719476736 //注释掉原先的系统的配置; #kernel.shmall = 4294967296 fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmmax = 858993459 //大于SGA,小于物理内存; kernel.shmall = 1048576 //物理内存%4K; 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 [[email protected] ~]# sysctl -p
配置grid和oracle用户的环境变量
[[email protected] ~]# su - grid //grid用户环境变量配置; [[email protected] ~]$ vi .bash_profile PS1="[`whoami`@`hostname`:"'$PWD]$' export PS1 umask 022 export TMP=/tmp export LANG=en_US export TMPDIR=$TMP export ORACLE_HOSTNAME=rhel6 ORACLE_SID=+ASM; export ORACLE_SID ORACLE_TERM=xterm; export ORACLE_TERM ORACLE_BASE=/u01/app/grid; export ORACLE_BASE ORACLE_HOME=/u01/app/11.2.0/grid; export ORACLE_HOME NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"; export NLS_DATE_FORMAT PATH=.:$PATH:$HOME/bin:$ORACLE_HOME/bin; export PATH THREADS_FLAG=native; export THREADS_FLAG if [ $USER = "oracle" ] || [ $USER = "grid" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi umask 022 fi ---------------------------------------------------------------------------- [[email protected] ~]# su - oracle [[email protected] ~]$ vi .bash_profile TMP=/tmp; export TMP TMPDIR=$TMP; export TMPDIR export LANG=en_US ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE ORACLE_HOME=$ORACLE_BASE/product/11.2.0; export ORACLE_HOME ORACLE_SID=itpuxdb; export ORACLE_SID export ORACLE_UNQNAME=orcl ORACLE_TERM=xterm; export ORACLE_TERM PATH=/usr/sbin:$PATH; export PATH PATH=$ORACLE_HOME/bin:$PATH; export PATH LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"; export NLS_DATE_FORMAT NLS_LANG=AMERICAN_AMERICA.ZHS16GBK;export NLS_LANG if [ $USER = "oracle" ] || [ $USER = "grid" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi umask 022 fi
配置udev配置ASM(在此系统所用磁盘为/dev/sda),
[[email protected] ~]# fdisk /dev/(sdb\sdc\sdd\sde\sdf) //对磁盘进行分区; [[email protected] ~]# vi /etc/udev/rules.d/99-oracle-asmdevices.rules KERNEL=="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" [[email protected] ~]# partprobe /dev/sdb1 [[email protected] ~]# partprobe /dev/sdc1 [[email protected] ~]# partprobe /dev/sdd1 [[email protected] ~]# partprobe /dev/sde1 [[email protected] ~]# partprobe /dev/sdf1 [[email protected] ~]# udevadm control --reload-rules [[email protected] ~]# start_udev Starting udev: [ OK ] [[email protected] ~]# ls -lsa /dev/asm* 0 brw-rw----. 1 grid asmadmin 8, 65 May 24 05:48 /dev/asm_data01 0 brw-rw----. 1 grid asmadmin 8, 81 May 24 05:48 /dev/asm_data02 0 brw-rw----. 1 grid asmadmin 8, 17 May 24 05:48 /dev/asm_grid1 0 brw-rw----. 1 grid asmadmin 8, 49 May 24 05:48 /dev/asm_recovery 0 brw-rw----. 1 grid asmadmin 8, 33 May 24 05:48 /dev/asm_system
上传Oracle安装包到服务器
[[email protected] ~]#yum -y install lrzsz //安装xshell所用的FTP软件; [[email protected] ~]#unzip p13390677_112040_Linux-x86-64_3of7.zip [[email protected] ~]# chown -R grid:oinstall /opt/grid/
配置VNC远程桌面
[[email protected] ~]# yum -y install vnc-server [[email protected] opt]# su - grid [[email protected]:/home/grid]$vncserver You will require a password to access your desktops. Password: Verify: xauth: creating new authority file /home/grid/.Xauthority New 'rhel6:1 (grid)' desktop is rhel6:1 Creating default startup script /home/grid/.vnc/xstartup Starting applications specified in /home/grid/.vnc/xstartup Log file is /home/grid/.vnc/rhel6:1.log
VNC远程桌面连接配置安装Grid Infrastructure组件
[[email protected] ~]$ cd /opt/grid/ [[email protected] grid]$ ./runInstaller
选择单节点安装配置Grid Infrastructure
选择语言环境
扫描ASM磁盘
配置统一的账户密码
环境变量配置正确的情况下会自动识别用户组
配置安装目录(可手动调整)
检测依赖包等信息后,出现警告(因测试虚拟机内存较少,未能达到Oracle推荐值这里可以忽略)
执行所要求的脚本
[[email protected] ~]# /u01/app/oraInventory/orainstRoot.sh Changing 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. [[email protected] ~]# /u01/app/11.2.0/grid/root.sh Performing root user operation for Oracle 11g The following environment variables are set as: ORACLE_OWNER= grid ORACLE_HOME= /u01/app/11.2.0/grid Enter 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 by Database Configuration Assistant when a database is created Finished 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_params Creating trace directory LOCAL 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 upstart rhel6 2017/05/24 07:14:47 /u01/app/11.2.0/grid/cdata/rhel6/backup_20170524_071447.olr Successfully configured Oracle Grid Infrastructure for a Standalone Server
配置安装成功
配置安装Oracle 客户端
[[email protected] opt]# su - oracle [[email protected] ~]$ vncserver You will require a password to access your desktops. Password: Verify: xauth: creating new authority file /home/oracle/.Xauthority New 'rhel6:2 (oracle)' desktop is rhel6:2 Creating default startup script /home/oracle/.vnc/xstartup Starting applications specified in /home/oracle/.vnc/xstartup Log file is /home/oracle/.vnc/rhel6:2.log [[email protected] opt]# unzip p13390677_112040_Linux-x86-64_1of7.zip [[email protected] opt]# unzip p13390677_112040_Linux-x86-64_2of7.zip [[email protected] opt]# chown -R oracle.oinstall database/
VNC远程桌面安装Oracle软件
[[email protected] database]$ ./runInstaller
选择只安装Oracle软件(后续再建实例)
选择单实例节点安装
选择安装企业版
Oracle数据库软件安装位置(环境变量读取正确不需要修改)
由于测试环境内存偏小,所以这里可以忽略警告继续安装
以root用户执行所需的脚本
[[email protected] tmp]# /u01/app/oracle/product/11.2.0/root.sh Performing root user operation for Oracle 11g The following environment variables are set as: ORACLE_OWNER= oracle ORACLE_HOME= /u01/app/oracle/product/11.2.0 Enter 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 by Database Configuration Assistant when a database is created Finished 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磁盘
[[email protected]:/home/grid]$asmca
以oracle用户远程桌面登陆,配置创建数据库
[[email protected] database]$ dbca
选择创建数据库
由于这里是实验环境选择第一项
配置instance名
由于这里是实验环境,选择启用OEM,不勾选快速闪回
配置统一的密码
在此选择ASM磁盘而非file system,选择创建的ASM磁盘组
实验环境勾选实例
配置SGA、PGA空间大小,配置中文字符集ZHFS16GBK,配置并发连接数,配置专用共享池
在此可配置数据文件大小以及自动扩展、redo log组配置,(实验环境在此不做过多配置)
在此可将数据配置文件等信息导出(方便后续文档撰写)
创建数据库中...
数据库安装完成
以grid用户查看集群状态及监听状态
[[email protected]:/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 ------------------------------------------------------------------------ [[email protected]:/home/grid]$lsnrctl status LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 24-MAY-2017 08:28:36 Copyright (c) 1991, 2013, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 11.2.0.4.0 - Production Start Date 24-MAY-2017 07:15:42 Uptime 0 days 1 hr. 12 min. 53 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /u01/app/11.2.0/grid/network/admin/listener.ora Listener Log File /u01/app/grid/diag/tnslsnr/rhel6/listener/alert/log.xml Listening 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用户登录连接数据库,查询表空间
[[email protected] database]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Wed May 24 08:27:56 2017 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production With the Partitioning, Automatic Storage Management, OLAP, Data Mining and 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 YES 6 rows selected.
在此,Rhel Linux环境下的udev + ASM Oracle 11gR2安装部署完成,状态正常。
转载于:https://blog.51cto.com/sound/1928821