Oracle 11g R2 silent installation on CentOS 6.4
CentOS server(desktop versiya yox)-ə GUİ-siz Oracle installation zamanı, ki bunun adı silent installation-dur qarşılaşdığım bitməyən problemlərdən dolayı bu məqaləni yazmağa məcbur oldum…Necə deyərlər çəkdiyim zülmü digər yeni başlayanlar da çəkməsin deyə 😉
Yazını 2 hissəyə bölürəm 1-cisi install mühitinin hazırlanması 2-ci isə Oracle-ın install-ı.
Bütün addımları ardıcıllıqla etsəniz sizdə də alınacaq.
Mühitin hazırlanması :
1. Dependency paketlərinin yüklənilməsi
[root@linuxsrv1 ~]# yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc gcc-c++ libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel
Qeyd edim ki, installation zamanı məhz bu paket dependency-lərdən dolayı ERROR çıxdı və installation ABORT olundu. ERROR tam olaraq belədir:
SEVERE: [FATAL] [INS-13013] Target environment do not meet some mandatory requirements.
CAUSE: Some of the mandatory prerequisites are not met. See logs for details. /usr/oracle/app/oraInventory/logs/installActions2013-10-05_03-04-19AM.log
ACTION: Identify the list of failed prerequisite checks from the log: /usr/oracle/app/oraInventory/logs/installActions2013-10-05_03-04-19AM.log. Then either from the log file or from installation manual find the appropriate configuration to meet the prerequisites and fix it manually.
Dediyi kimi log file-a baxdıqda paketlərdən bəzilərinin CHECK zamanı failed olduğunu gördüm.
Bundan çıxış yolu kimi yuxarıdakı install etdiyiniz paketlərə əlavə olaraq aşağıdakıları da install edin. Ardıcıllıqla komandaları keçirdin:
yum install libaio.i686 yum install glibc.i686 yum install compat-libstdc++-33.i686 yum install libaio-devel.i686 yum install libstdc++.i686 yum install unixODBC.i686 yum install unixODBC-devel.i686
pdksh-5.2.14 paketi isə ümumiyyətlə repo-da yoxdur. Dolayısı ilə .rpm-ini tapıb install etməliyik:
[root@linuxsrv1 ~]# wget ftp://ftp.pbone.net/mirror/www.whiteboxlinux.org/whitebox/4/en/os/x86_64/WhiteBox/RPMS/pdksh-5.2.14-30.x86_64.rpm [root@linuxsrv1 ~]# rpm -ivh pdksh-5.2.14-30.x86_64.rpm
2. Kernel parameter-lərə əlavələr
[root@linuxsrv1 ~]# nano /etc/sysctl.conf
faylı açırıq aşağıdakı sətrləri tapırıq və onu comment edirik:
# Disable netfilter on bridges. #net.bridge.bridge-nf-call-ip6tables = 0 #net.bridge.bridge-nf-call-iptables = 0 #net.bridge.bridge-nf-call-arptables = 0
Daha sonra faylın sonuna əlavə edirik:
net.ipv4.ip_local_port_range = 9000 65500 fs.file-max = 6815744 kernel.shmall = 10523004 kernel.shmmax = 6465333657 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 net.core.rmem_default=262144 net.core.wmem_default=262144 net.core.rmem_max=4194304 net.core.wmem_max=1048576 fs.aio-max-nr = 1048576
Faylı save edirik. Daha sonra aşağıdakı komandanı işlədirik:
[root@linuxsrv1 ~]# sysctl -p net.ipv4.ip_forward = 0 net.ipv4.conf.default.rp_filter = 1 net.ipv4.conf.default.accept_source_route = 0 kernel.sysrq = 0 kernel.core_uses_pid = 1 net.ipv4.tcp_syncookies = 1 kernel.msgmnb = 65536 kernel.msgmax = 65536 kernel.shmmax = 68719476736 kernel.shmall = 4294967296 net.ipv4.ip_local_port_range = 9000 65500 fs.file-max = 6815744 kernel.shmall = 10523004 kernel.shmmax = 6465333657 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 net.core.rmem_default = 262144 net.core.wmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_max = 1048576 fs.aio-max-nr = 1048576
Sizdə də eyni nəticələrdisə davam edı bilərik.
3. Oracle üçün system user-inin yaradılması
Ardıcıllıqla:
[root@linuxsrv1 ~]# groupadd -g 200 oinstall [root@linuxsrv1 ~]# groupadd -g 201 dba [root@linuxsrv1 ~]# useradd -u 440 -g oinstall -G dba -d /usr/oracle oracle
Daha sonra aşağıdakı qaydada faylı açırıq və əlavəni edirik(elave1-lerin arasında gördüyümüzü):
[root@linuxsrv1 ~]# nano /etc/pam.d/login session required pam_selinux.so open session required pam_namespace.so # elave1 session required pam_limits.so # elave1 session optional pam_keyinit.so force revoke session include system-auth
Daha sonra aşağıdakı qaydada digər bir faylı açın və sonuncu sətrə əlavələr edin:
[root@linuxsrv1 ~]# nano /etc/security/limits.conf # sonuncu sətrə əlavə edin oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536
Yenə eyni qaydada digər faylın sonuna əlavə edirik:
[root@linuxsrv1 ~]# nano /etc/profile # Sonuna əlavə edin if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi
4. Oracle user-inə keçək və bəzi əməliyyatlar edək:
Ardıcıllıqla:
[oracle@linuxsrv1 ~]$ chmod 755 /usr/oracle [oracle@linuxsrv1 ~]$ mkdir /usr/oracle/app [oracle@linuxsrv1 ~]$ chmod 775 /usr/oracle/app [oracle@linuxsrv1 ~]$ mkdir /usr/oracle/oradata [oracle@linuxsrv1 ~]$ chmod 775 /usr/oracle/oradata
bash_profile-a ORACLE_BASE olacaq path-ı qeyd edirik:
[oracle@linuxsrv1 ~]$ nano ~/.bash_profile # sonuncu sətrə əlavə edin umask 022 export ORACLE_BASE=/usr/oracle/app
Download etdiyimiz Oracle .zip fayllarını unzip edəcəyimiz tmp directory-ni yaradaq:
[oracle@linuxsrv1 ~]$ mkdir tmp
Keçirik 2-ci mərhələyə Oracle installation
1. Əlimizdə olan .zip faylları yerləşdiririk tmp papkasına və unzip edirik:
[oracle@linuxsrv1 ~]$ cd tmp [oracle@linuxsrv1 tmp]$ ls linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of2.zip [oracle@linuxsrv1 tmp]$ unzip linux.x64_11gR2_database_1of2.zip [oracle@linuxsrv1 tmp]$ unzip linux.x64_11gR2_database_2of2.zip [oracle@linuxsrv1 tmp]$ ls database linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of2.zip
2. silent installation üçün response file-ın hazırlanması..
response file-ımızı enterprise.rsp adlandırırı. Aşağıdakı ardıcıllıqla komandaları keçirdək:
[oracle@linuxsrv1 ~]$ cd /usr/oracle/tmp/database/response [oracle@linuxsrv1 response]$ ls dbca.rsp db_install.rsp netca.rsp [oracle@linuxsrv1 response]$ touch enterprise.rsp [oracle@linuxsrv1 response]$ ls dbca.rsp db_install.rsp enterprise.rsp netca.rsp
Daha sonra response file-ımız olan enterprise.rsp daxiline aşağıdakıları yazaq:
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0 oracle.install.option=INSTALL_DB_SWONLY ORACLE_HOSTNAME=linuxsrv1 UNIX_GROUP_NAME=oinstall INVENTORY_LOCATION=/usr/oracle/app/oraInventory SELECTED_LANGUAGES=en ORACLE_HOME=/usr/oracle/app/product/11.2.0/dbhome_1 ORACLE_BASE=/usr/oracle/app oracle.install.db.InstallEdition=EE oracle.install.db.isCustomInstall=false oracle.install.db.customComponents=oracle.server:11.2.0.1.0,oracle.sysman.ccr:10.2.7.0.0,oracle.xdk:11.2.0.1.0,oracle.rdbms.oci:11.2.0.1.0,oracle.network:11.2.0.1.0,oracle.network.listener:11.2.0.1.0,oracle.rdbms:11.2.0.1.0,oracle.options:11.2.0.1.0,oracle.rdbms.partitioning:11.2.0.1.0,oracle.oraolap:11.2.0.1.0,oracle.rdbms.dm:11.2.0.1.0,oracle.rdbms.dv:11.2.0.1.0,orcle.rdbms.lbac:11.2.0.1.0,oracle.rdbms.rat:11.2.0.1.0 oracle.install.db.DBA_GROUP=dba oracle.install.db.OPER_GROUP=dba oracle.install.db.CLUSTER_NODES= oracle.install.db.config.starterdb.type=GENERAL_PURPOSE oracle.install.db.config.starterdb.globalDBName=ORCL oracle.install.db.config.starterdb.SID=ORCL oracle.install.db.config.starterdb.characterSet=AL32UTF8 oracle.install.db.config.starterdb.memoryOption=true oracle.install.db.config.starterdb.memoryLimit=512 oracle.install.db.config.starterdb.installExampleSchemas=true 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.dbcontrol.enableEmailNotification=false oracle.install.db.config.starterdb.dbcontrol.emailAddress= oracle.install.db.config.starterdb.dbcontrol.SMTPServer= 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=
oraInst.loc faylını yaradırıq və daxilinə qeyd edirik:
[root@linuxsrv1 ~]# touch /etc/oraInst.loc [root@linuxsrv1 ~]# nano /etc/oraInst.loc # Aşağıdakıları Qeyd edirik və faylı save edirik. inventory_loc=/usr/oracle/app/oraInventory inst_group=oinstall
Permission-larımızı veririk:
[root@linuxsrv1 etc]# chown oracle:oinstall oraInst.loc [root@linuxsrv1 etc]# chmod 664 oraInst.loc
İndi də son komandamızı keçirdək və installation-a başlayaq aşağıda da gördüyünüz kimi WARNING çıxacaq lakin buna məhəl qoymuruq yəni qətiyyən installation-u abort(CTRL+C) etmirik!:
[oracle@linuxsrv1 database]$ ./runInstaller -silent -noconfig -responseFile /usr/oracle/tmp/database/response/enterprise.rsp Starting Oracle Universal Installer... Checking Temp space: must be greater than 120 MB. Actual 41180 MB Passed Checking swap space: must be greater than 150 MB. Actual 2559 MB Passed Preparing to launch Oracle Universal Installer from /tmp/OraInstall2013-10-05_03-23-07AM. Please wait ... [WARNING] [INS-13014] Target environment do not meet some optional requirements. CAUSE: Some of the optional prerequisites are not met.
Bir müddət səbrli olmalısınız çünki installation status bildirilmir. Sadəcə success kimi ən sonda belə bir yazı gələcək:
The following configuration scripts need to be executed as the “root” user.
#!/bin/sh
#Root scripts to run
/usr/oracle/app/product/11.2.0/dbhome_1/root.sh
To execute the configuration scripts:
1. Open a terminal window
2. Log in as “root”
3. Run the scripts
4. Return to this window and hit “Enter” key to continue
Successfully Setup Software.
Çıxan mesajda deyildiyi kimi root user-lə /usr/oracle/app/product/11.2.0/dbhome_1/root.sh scriptini run edirik:
[root@linuxsrv1 ~]# cd /usr/oracle/app/product/11.2.0/dbhome_1/ [root@linuxsrv1 dbhome_1]# ./root.sh Check /usr/oracle/app/product/11.2.0/dbhome_1/install/root_linuxsrv1_2013-10-05_03-35-47.log for the output of root script
VƏ ən sonda DBCA ilə silent database creation etməliyik:
[oracle@linuxsrv1 ~]$ dbca -silent -createDatabase -templateName General_Purpose.dbc -gdbName ORCL -sid ORCL -SysPassword change_on_install -SystemPassword manager -emConfiguration NONE -datafileDestination /usr/oracle/app/oradata -storageType FS -characterSet AL32UTF8 -memoryPercentage 40
Vəssalam bununla installation-umuz bitmiş hesab olunur.
İndi də Oracle-a connect olmağa çalışaq. Bunun üçün listener-i start etməliyik. Və ümumiyyətlə hər dəfə biz bəzi dəyişənləri yazmamaq məqsədilə bash_profile faylına son əlavələri edirik
(QEYD: oracle user-i ilə etməlisiniz):
[oracle@linuxsrv1 ~]$ nano ~/.bash_profile # ən sonuna əlavə edin export ORACLE_HOME=/usr/oracle/app3/product/11.2.0/dbhome_1 export PATH=$ORACLE_HOME/bin:$PATH
<strong>oracle user-indən logout oluruq daha sonra login oluruq!</strong>
listener-i start edirik:
[oracle@linuxsrv1 ~]$ lsnrctl start LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 05-OCT-2013 03:45:42 Copyright (c) 1991, 2009, Oracle. All rights reserved. Starting /usr/oracle/app/product/11.2.0/dbhome_1/bin/tnslsnr: please wait... TNSLSNR for Linux: Version 11.2.0.1.0 - Production Log messages written to /usr/oracle/app/diag/tnslsnr/linuxsrv1/listener/alert/log.xml Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=linuxsrv1)(PORT=1521))) Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521)) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production Start Date 05-OCT-2013 03:45:43 Uptime 0 days 0 hr. 0 min. 1 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Log File /usr/oracle/app/diag/tnslsnr/linuxsrv1/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=linuxsrv1)(PORT=1521))) The listener supports no services The command completed successfully
Qeyd edək ki, biz yuxarıda dbca ilə database yaratmışdıq və onun SİD-ni ORCL vermişdik.
connect oluruq…
[oracle@linuxsrv1 ~]$ export ORACLE_SID=ORCL [oracle@linuxsrv1 ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Sat Oct 5 03:47:17 2013 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to an idle instance. SQL> show user USER is "SYS"
Oracle 11g R2 Centos 6.4 üzərinə silent installation haqqında bu yazıda göstərilən hər şey test Linux üzərində test məqsədlə edilmişdir.
Təşəkkürlər 😉
Şərhlər ( 2 )
Şəhriyar, gözəl məqalə üçün təşəkkürlər.
Şadam ki, hələ də faydalıdır 🙂