|
Size: 14445
Comment:
|
Size: 14455
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 7: | Line 7: |
| rlwrap |
Contents
-
Install Oracle in silent mode 11G Release 2 (11.2.0.4) on OEL6.6
- 准备ISO REPO环境
- install missing packages
- add users/groups
- create directorys
- add kernel parameters ? no need!
- Some system parameters
- Grid Settings FOR ASM
- Oracle Settings
- Config ASM
- Creating ASM disk volumes
- install grid software
- Creating ASM disk groups for Oracle database installation
- install database software
- Create Database with dbca command OR dbca_silent.rsp
- edit /etc/oratab
- Troubleshooting
Install Oracle in silent mode 11G Release 2 (11.2.0.4) on OEL6.6
准备ISO REPO环境
rlwrap ln -sfv /usr/bin/vim /bin/vi updatedb& mkdir /mnt/iso mount -o loop /media/OracleLinux-R6-U6-Server-x86_64-dvd.iso /mnt/iso cd /mnt createrepo . # 添加ISO源 cat >> /etc/yum.repos.d/iso.repo <<EOF [IS0] name=ISO baseurl=file:///mnt gpgcheck=0 enabled=1 EOF
install missing packages
rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE}(%{ARCH})\n' binutils \
compat-libstdc++-33 \
elfutils-libelf \
elfutils-libelf-devel \
gcc \
gcc-c++ \
glibc \
glibc-common \
glibc-devel \
glibc-headers \
ksh \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
make \
sysstat \
unixODBC \
unixODBC-devel- install missing...
rpm -Uvh /media/software/oracleasmlib-2.0.12-1.el6.x86_64.rpm yum install oracle-rdbms-server-11gR2-preinstall.x86_64 oracleasm-support.x86_64 yum install elfutils-libelf-devel libaio-devel unixODBC unixODBC-devel -y
add users/groups
groupadd -g 1000 oinstall groupadd -g 1200 asmadmin groupadd -g 1201 asmdba groupadd -g 1202 asmoper groupadd -g 1300 dba groupadd -g 1301 oper useradd -m -u 1101 -g oinstall -G dba,oper,asmdba -d /home/oracle -s /bin/bash oracle passwd oracle useradd -m -u 1100 -g oinstall -G dba,asmadmin,asmdba,asmoper -d /home/grid -s /bin/bash grid passwd grid
create directorys
mkdir -pv /u01/app/grid mkdir -pv /u01/app/11.2.0/grid chown -Rv grid:oinstall /u01 mkdir -pv /u01/app/oracle/product/11.2.0/db_1 chown -Rv oracle:oinstall /u01/app/oracle chmod -Rv 775 /u01
add kernel parameters ? no need!
1 cat >> /etc/sysctl.conf <<EOF
2 kernel.shmmax = 68719476736
3 kernel.shmall = 4294967296
4 kernel.shmmni = 4096
5 kernel.sem = 250 32000 100 128
6 fs.file-max = 6815744
7 net.ipv4.ip_local_port_range = 9000 65500
8 net.core.rmem_default=262144
9 net.core.rmem_max=4194304
10 net.core.wmem_default=262144
11 net.core.wmem_max=1048576
12 fs.aio-max-nr=1048576
13 EOF
14 sysctl -p
15
16 cat >> /etc/security/limits.conf <<EOF
17 oracle soft nproc 131072
18 oracle hard nproc 131072
19 oracle soft nofile 131072
20 oracle hard nofile 131072
21 oracle soft core unlimited
22 oracle hard core unlimited
23 oracle soft memlock 50000000
24 oracle hard memlock 50000000
25 grid soft nproc 2047
26 grid hard nproc 16384
27 grid soft nofile 1024
28 grid hard nofile 65536
29 EOF
Some system parameters
cat >> /etc/security/limits.conf <<EOF
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
EOF
cat >> /etc/pam.d/login <<EOF
session required pam_limits.so
EOF
cat >> /etc/profile <<EOF
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
EOF
Grid Settings FOR ASM
login with grid user!
su - grid
cat > /home/grid/.bash_profile <<"EOF"
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
ORACLE_SID=+ASM; export ORACLE_SID
JAVA_HOME=/usr/local/java; export JAVA_HOME
ORACLE_BASE=/u01/app/grid; export ORACLE_BASE
ORACLE_HOME=/u01/app/11.2.0/grid; export ORACLE_HOME
ORACLE_TERM=xterm; export ORACLE_TERM
NLS_DATE_FORMAT="DD-MON-YYYY HH24:MI:SS"; export NLS_DATE_FORMAT
TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN
ORA_NLS11=$ORACLE_HOME/nls/data; export ORA_NLS11
PATH=.:${JAVA_HOME}/bin:${PATH}:$HOME/bin:$ORACLE_HOME/bin
PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
PATH=${PATH}:/u01/app/common/oracle/bin
export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export CLASSPATH
THREADS_FLAG=native; export THREADS_FLAG
export TEMP=/tmp
export TMPDIR=/tmp
umask 022
EOF
Oracle Settings
# login with oracle user!
su - oracle cat > /home/oracle/.bash_profile <<"EOF" export TMP=/tmp export PS1='\u@\h \w \$ ' export ORACLE_HOSTNAME=gowms export ORACLE_UNQNAME=gowms export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 export ORACLE_SID=gowms PATH=/usr/sbin:$PATH:$ORACLE_HOME/bin export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; alias cdob='cd $ORACLE_BASE' alias cdoh='cd $ORACLE_HOME' alias tns='cd $ORACLE_HOME/network/admin' alias envo='env | grep ORACLE' umask 022 EOF
Config ASM
root# /usr/sbin/oracleasm configure -i
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]: y
Writing Oracle ASM library driver configuration: done 1 # To avoid ASM issue with Multipath devices on Linux ORA-15186
2 # **** asm and multipath need special settings in /etc/sysconfig/oracleasm ****
3
4 # for device mapper drives, scan dm at first #
5 # ORACLEASM_SCANORDER=dm
6
7 # ignore sd drives, because we have multipath, to avoid missconfigurations #
8 # ORACLEASM_SCANEXCLUDE=sd
sed -i 's/ORACLEASM_SCANORDER="/ORACLEASM_SCANORDER="dm/' /etc/sysconfig/oracleasm sed -i 's/ORACLEASM_SCANEXCLUDE="/ORACLEASM_SCANEXCLUDE="sd/' /etc/sysconfig/oracleasm /usr/sbin/oracleasm init /etc/init.d/oracleasm stop; sleep 2 /etc/init.d/oracleasm start
Creating ASM disk volumes
# parted /dev/sdc mklabel gpt disk >2TB
mklable for disk
fdisk -l parted /dev/sdb mklabel msdos parted /dev/sdc mklabel msdos parted /dev/sdd mklabel msdos
auto parted disks
parted /dev/sdb mkpart primary 0% 100% parted /dev/sdc mkpart primary 0% 100% parted /dev/sdd mkpart primary 0% 100% parted /dev/sdb print parted /dev/sdc print parted /dev/sdd print
create ASM disk
# in gowms!!!
/usr/sbin/oracleasm createdisk GOWMS_01 /dev/sdb1 /usr/sbin/oracleasm createdisk GOEC_01 /dev/sdc1 /usr/sbin/oracleasm createdisk GOWMS_CRS01 /dev/sdd1 /usr/sbin/oracleasm scandisks /usr/sbin/oracleasm listdisks
# in gowms-stb!!!
/usr/sbin/oracleasm createdisk GOWMSSTB_01 /dev/sdb1 /usr/sbin/oracleasm createdisk GOCARD_01 /dev/sdc1 /usr/sbin/oracleasm createdisk GOWMS_stb_CRS01 /dev/sdd1 /usr/sbin/oracleasm scandisks /usr/sbin/oracleasm listdisks
install grid software
# login as grid user! # Notes #+ choose For A Standalone Server
unzip /media/software/p13390677_112040_Linux-x86-64_3of7.zip ~/grid/runInstaller # Check it ps -ef | grep grid
auto install grid with rsp file
./grid/runInstaller -silent -force -responseFile /home/grid/grid_silent.rsp
As a root user, execute the following script(s):
1. /u01/app/oraInventory/orainstRoot.sh 2. /u01/app/11.2.0/grid/root.sh
=== deinstall grid standalone == lsnrctl stop
/u01/app/11.2.0/grid/deinstall/deinstall
Creating ASM disk groups for Oracle database installation
# login as grid user!
asmca&
install database software
su - oracle cd /home/oracle -> unzip software 11.2.0.4 unizp p13390677_112040_Linux-x86-64_1of7.zip unzip p13390677_112040_Linux-x86-64_2of7.zip
install Database with db_install.rsp
- ./runInstaller -silent -force -responseFile ~/db_install.rsp
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0 oracle.install.option=INSTALL_DB_SWONLY ORACLE_HOSTNAME=gowms UNIX_GROUP_NAME=oinstall INVENTORY_LOCATION=/u01/app/oraInventory SELECTED_LANGUAGES=en ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1 ORACLE_BASE=/u01/app/oracle oracle.install.db.InstallEdition=EE oracle.install.db.EEOptionsSelection=false oracle.install.db.optionalComponents= oracle.install.db.DBA_GROUP=dba oracle.install.db.OPER_GROUP=oper oracle.install.db.CLUSTER_NODES= oracle.install.db.isRACOneInstall=false oracle.install.db.racOneServiceName= oracle.install.db.config.starterdb.type=GENERAL_PURPOSE oracle.install.db.config.starterdb.globalDBName= oracle.install.db.config.starterdb.SID= oracle.install.db.config.starterdb.characterSet= oracle.install.db.config.starterdb.memoryOption=false oracle.install.db.config.starterdb.memoryLimit= oracle.install.db.config.starterdb.installExampleSchemas=false oracle.install.db.config.starterdb.enableSecuritySettings=true oracle.install.db.config.starterdb.password.ALL= oracle.install.db.config.starterdb.password.SYS= oracle.install.db.config.starterdb.password.SYSTEM= oracle.install.db.config.starterdb.password.SYSMAN= oracle.install.db.config.starterdb.password.DBSNMP= oracle.install.db.config.starterdb.control=DB_CONTROL oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL= oracle.install.db.config.starterdb.automatedBackup.enable=false oracle.install.db.config.starterdb.automatedBackup.osuid= oracle.install.db.config.starterdb.automatedBackup.ospwd= oracle.install.db.config.starterdb.storageType= oracle.install.db.config.starterdb.fileSystemStorage.dataLocation= oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation= oracle.install.db.config.asm.diskGroup= oracle.install.db.config.asm.ASMSNMPPassword= MYORACLESUPPORT_USERNAME= MYORACLESUPPORT_PASSWORD= SECURITY_UPDATES_VIA_MYORACLESUPPORT=false DECLINE_SECURITY_UPDATES=true PROXY_HOST= PROXY_PORT= PROXY_USER= PROXY_PWD= PROXY_REALM= COLLECTOR_SUPPORTHUB_URL= oracle.installer.autoupdates.option=SKIP_UPDATES oracle.installer.autoupdates.downloadUpdatesLoc= AUTOUPDATES_MYORACLESUPPORT_USERNAME= AUTOUPDATES_MYORACLESUPPORT_PASSWORD=
Create Database with dbca command OR dbca_silent.rsp
# Pay attention to database control file location in initialization parameter configuration step (place control files on ASM disks +DATA and copy on +FRA): ("+DATA/{DB_UNIQUE_NAME}/control01.ctl", "+FRA/{DB_UNIQUE_NAME}/control02.ctl")
dbca& dbca -silent \ -createDatabase \ -asmsnmpPassword Systec36 \ -characterSet AL32UTF8 \ -continueOnNonFatalErrors false \ -disableSecurityConfiguration ALL \ -diskGroupName GOWMS_DATA \ -emConfiguration NONE \ -gdbName gowms.local \ -listeners LISTENER \ -memoryPercentage 30 \ -recoveryAreaDestination none \ -sid gowms \ -SysPassword Systec36 \ -SystemPassword Systec36 \ -storageType ASM \ -sampleSchema true \ -templateName General_Purpose.dbc
dbca_silent.rsp
--global database name GDBNAME = "gowms" --instance database name SID = "gowms" --template name used to create database TEMPLATENAME = "General_Purpose.dbc" --password for user sys SYSPASSWORD = "oracle" --password for user system SYSTEMPASSWORD = "oracle" --creates database console EMCONFIGURATION = "LOCAL" --password for sysman user SYSMANPASSWORD = "oracle" --password for dbsnmp user DBSNMPPASSWORD = "oracle" --storage used to create database --FS - it means OS data files STORAGETYPE=FS --default directory for oracle database datafiles DATAFILEDESTINATION=/u01/app/oracle/oradata --default directory for flashback dataa RECOVERYAREADESTINATION=/u01/app/oracle/flash_recovery_area STORAGETYPE=FS --database character set CHARACTERSET = "AL32UTF8" --national database character set NATIONALCHARACTERSET= "AL16UTF16" --listener name to register database to LISTENERS = "LISTENER" --force to install sample schemas on the database SAMPLESCHEMA=TRUE --specify database type --has influence on some instance parameters DATABASETYPE = "OLTP" --force to use autmatic mamory management AUTOMATICMEMORYMANAGEMENT = "TRUE" --defines size of memory used by the database
- dbca -silent -responseFile ~/db_install.rsp
edit /etc/oratab
gowms:/u01/app/oracle/product/11.2.0/db_1:Y
Troubleshooting
oracle 11g dbca ORA-01031: insufficient privileges asm
[grid@gowms ~]$ srvctl start database -d gowms PRCR-1079 : Failed to start resource ora.gowms.db ORA-01031: insufficient privileges CRS-5017: The resource action "ora.gowms.db start" encountered the following error: ORA-01031: insufficient privileges . For details refer to "(:CLSN00107:)" in "/u01/app/11.2.0/grid/log/gowms/agent/ohasd/oraagent_grid/oraagent_grid.log". CRS-2674: Start of 'ora.gowms.db' on 'gowms' failed ORA-01031: insufficient privileges [grid@gowms ~]$ id grid uid=1100(grid) gid=1000(oinstall) groups=1000(oinstall),1200(asmadmin),1201(asmdba),1202(asmoper)
=> add grid to dba group!!!
[root@gowms ~]# usermod -G dba,asmadmin,asmdba,asmoper grid [root@gowms ~]# id grid uid=1100(grid) gid=1000(oinstall) groups=1000(oinstall),1200(asmadmin),1201(asmdba),1202(asmoper),1300(dba) [grid@gowms ~]$ srvctl start database -d gowms [grid@gowms ~]$ srvctl status database -d gowms Database is running.
References
https://gruffdba.wordpress.com/2013/01/10/silent-install-of-oracle-11-2-0-3-on-redhat-6-0/
http://dbaora.com/install-oracle-in-silent-mode-11g-release-2-11-2/
https://emarcel.com/installing-oracle-database-11g-r2-on-linux-with-asm/
http://www.oracle-wiki.net/startdocshowtoinstalloracle11glinuxasm#Directory-Structure
https://community.emc.com/docs/DOC-32190
https://blogs.oracle.com/linux/entry/oracle_rdbms_server_11gr2_pre
https://orasteps.wordpress.com/tag/remove-grid-infrastructure/
