CentOS安裝Oracle

準(zhǔn)備資料

CentOS6.7

Oracle 11gR2 11.2.0.4.0

VMware? Workstation 12 Pro

MobaXterm

參考:http://docs.oracle.com/cd/E11882_01/install.112/e24326/

root用戶要做的

虛擬機安裝與配置略

硬件需求

free查看內(nèi)存,swap保證1G-2G以上

free
grep MemTotal /proc/meminfo
grep SwapTotal /proc/meminfo

df查詢分區(qū),tmp保證1G-2G以上

df -h /dev/shm/
df -h /tmp
df -h

檢查系統(tǒng)是多少位, x86_64代表64位

uname -m

設(shè)置主機名/etc/sysconfig/network,HOSTNAME=主機名

設(shè)置Hosts /etc/hosts,添加IP和主機名

軟件需求

檢查是否安裝rpm -qa | grep 軟件包名 yum list | grep 軟件包名

安裝軟件包yum install 軟件包名

Linux 6依賴的軟件包

binutils-2.20.51.0.2-5.11.el6 (x86_64)
compat-libcap1-1.10-1 (x86_64)
compat-libstdc++-33-3.2.3-69.el6 (x86_64)
compat-libstdc++-33-3.2.3-69.el6.i686
gcc-4.4.4-13.el6 (x86_64)
gcc-c++-4.4.4-13.el6 (x86_64)
glibc-2.12-1.7.el6 (i686)
glibc-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6.i686
ksh
libgcc-4.4.4-13.el6 (i686)
libgcc-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6.i686
libstdc++-devel-4.4.4-13.el6 (x86_64)
libstdc++-devel-4.4.4-13.el6.i686
libaio-0.3.107-10.el6 (x86_64)
libaio-0.3.107-10.el6.i686
libaio-devel-0.3.107-10.el6 (x86_64)
libaio-devel-0.3.107-10.el6.i686
make-3.81-19.el6
sysstat-9.0.4-11.el6 (x86_64)

Linux 7 依賴的軟件包

binutils-2.23.52.0.1-12.el7.x86_64 
compat-libcap1-1.10-3.el7.x86_64 
compat-libstdc++-33-3.2.3-71.el7.i686
compat-libstdc++-33-3.2.3-71.el7.x86_64
gcc-4.8.2-3.el7.x86_64 
gcc-c++-4.8.2-3.el7.x86_64 
glibc-2.17-36.el7.i686 
glibc-2.17-36.el7.x86_64 
glibc-devel-2.17-36.el7.i686 
glibc-devel-2.17-36.el7.x86_64 
ksh
libaio-0.3.109-9.el7.i686 
libaio-0.3.109-9.el7.x86_64 
libaio-devel-0.3.109-9.el7.i686 
libaio-devel-0.3.109-9.el7.x86_64 
libgcc-4.8.2-3.el7.i686 
libgcc-4.8.2-3.el7.x86_64 
libstdc++-4.8.2-3.el7.i686 
libstdc++-4.8.2-3.el7.x86_64 
libstdc++-devel-4.8.2-3.el7.i686 
libstdc++-devel-4.8.2-3.el7.x86_64 
libXi-1.7.2-1.el7.i686 
libXi-1.7.2-1.el7.x86_64 
libXtst-1.2.2-1.el7.i686 
libXtst-1.2.2-1.el7.x86_64 
make-3.82-19.el7.x86_64 
sysstat-10.1.5-1.el7.x86_64

ksh下載

http://rpmfind.net/linux/rpm2html/search.php?query=ksh

安裝

rpm -ivh ksh-20120801-33.el6.x86_64.rpm

最后依然沒有解決的

pdksh-5.2.14

libaio-devel-0.3.105

遺漏的

elfutils-libelf-devel

ODBC驅(qū)動

Linux 6

unixODBC-2.2.14-11.el6 (x86_64) or later
unixODBC-2.2.14-11.el6.i686 or later
unixODBC-devel-2.2.14-11.el6 (x86_64) or later
unixODBC-devel-2.2.14-11.el6.i686 or later

Linux 7

xODBC-2.3.1-6.el7.x86_64 or later
unixODBC-2.3.1-6.el7.i686 or later
unixODBC-devel-2.3.1-6.el7.x86_64 or later
unixODBC-devel-2.3.1-6.el7.i686 or later

創(chuàng)建用戶和組

groupadd oinstall
groupadd dba
groupadd oper
useradd -g oinstall -G dba,oper oracle 
passwd oracle

驗證是否創(chuàng)建成功

# id oracle
uid=502(oracle) gid=501(oinstall) 組=501(oinstall),502(dba)

若oracle用戶已經(jīng)存在,可以使用如下命令設(shè)置oracle用戶初始群組為 oinstall,有效群組為 dba、oper

usermod -g oinstall -G dba,oper oracle

創(chuàng)建目錄并分配權(quán)限

mkdir /u01/app/oracle
mkdir /u01/app/oraInventory
chown oracle:oinstall /u01
chown oracle:oinstall /u01/app
chown oracle:oinstall /u01/app/oracle
chown oracle:oinstall /u01/app/oraInventory
chmod 755 /u01/app/oracle
chmod 755 /u01/app/oraInventory

修改內(nèi)核參數(shù)

vim /etc/sysctl.conf

添加

fs.suid_dumpable = 1
fs.aio-max-nr = 1048576
fs.file-max = 6815744
#kernel.shmall = 2097152
#kernel.shmmax = 536870912
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
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

執(zhí)行命令時配置生效

/sbin/sysctl -p

修改系統(tǒng)資源限制

vim /etc/security/limits.conf

添加

oracle              soft    nproc   16384
oracle              hard    nproc   16384
oracle              soft    nofile  4096
oracle              hard    nofile  65536
oracle              soft    stack   10240

vim /etc/pam.d/login #R1的要求,R2不要求

添加

session required pam_limits.so

vim /etc/profile #R1的要求,R2不要求

添加

if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi

vim /etc/security/limits.d/90-nproc.conf

* soft nproc 1024修改為* - nproc 16384

關(guān)閉SELinux

設(shè)置SELinux不開機啟動

vim /etc/selinux/config

SELINUX=disabled或者SELINUX=permissive

關(guān)閉SELinux

setenforce 0

oracle用戶要做的

設(shè)置oracle賬號登錄時環(huán)境

vim /home/oracle/.bash_profile

ORACLE_BASE=/u01/app/oracle; #安裝目錄
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1; #oracle家目錄
ORACLE_SID=orcl; #實例名
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin;
export ORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH PATH;
if [ $USER = "oracle" ]; then
  if [ $SHELL = "/bin/ksh" ]; then
    ulimit -p 16384
    ulimit -n 65536
  else
    ulimit -u 16384 -n 65536
  fi
fi

$source .bash_profile

source .bash_profile

準(zhǔn)備安裝包

Installation Type Zip File
Oracle Database (includes Oracle Database and Oracle RAC)Note: you must download both zip files to install Oracle Database. p13390677_112040_platform_1of7.zip p13390677_112040_platform_2of7.zip
Oracle Grid Infrastructure (includes Oracle ASM, Oracle Clusterware, and Oracle Restart) p13390677_112040_platform_3of7.zip
Oracle Database Client p13390677_112040_platform_4of7.zip
Oracle Gateways p13390677_112040_platform_5of7.zip
Oracle Examples p13390677_112040_platform_6of7.zip
Deinstall p13390677_112040_platform_7of7.zip

ftp上傳

解壓

安裝Oracle只需要第一個和第二個文件

cd ~
unzip p13390677_112040_platform_1of7.zip
unzip p13390677_112040_platform_2of7.zip

安裝文件所在目錄 /home/oracle/database/

保證權(quán)限

chmod -R 700 /home/oracle/database/
chmod -R oracle:oinstall /home/oracle/database/

圖形安裝

export LANG=en_US
/home/oracle/database/runInstaller

靜默安裝

./runInstaller oracle.install.option=INSTALL_DB_SWONLY \
    ORACLE_BASE=/u01/app/oracle/ \
    ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1 \
    UNIX_GROUP_NAME=oinstall  \
    oracle.install.option=INSTALL_DB_AND_CONFIG \
    ORACLE_HOSTNAME=${HOSTNAME} \ #換成主機名
    oracle.install.db.DBA_GROUP=dba \
    oracle.install.db.OPER_GROUP=oinstall \
    oracle.install.db.BACKUPDBA_GROUP=dba  \
    oracle.install.db.DGDBA_GROUP=dba  \
    oracle.install.db.KMDBA_GROUP=dba  \
    FROM_LOCATION=../stage/products.xml \
    INVENTORY_LOCATION=/u01/app/oracle/oraInventory/ \
    SELECTED_LANGUAGES=en,zh_CN \ #界面顯示語言
    oracle.install.db.InstallEdition=EE \ #企業(yè)版
    oracle.install.db.EEOptionsSelection=false \
    oracle.install.db.isRACOneInstall=false \
    oracle.install.db.config.starterdb.type=GENERAL_PURPOSE \
    oracle.install.db.config.starterdb.globalDBName=orcl \ #數(shù)據(jù)庫名
    oracle.install.db.config.starterdb.SID=orcl \ #實例名
    oracle.install.db.config.starterdb.characterSet=ZHS16GBK \#字符集
    oracle.install.db.config.starterdb.memoryOption=true \ #
    oracle.install.db.config.starterdb.memoryLimit=1530 \ #內(nèi)存限制
    oracle.install.db.config.starterdb.installExampleSchemas=false \ 
    oracle.install.db.config.starterdb.enableSecuritySettings=true \ 
    oracle.install.db.config.starterdb.control=DB_CONTROL \
    oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE \
    oracle.install.db.config.starterdb.automatedBackup.enable=false \
    oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=/u01/app/oracle/oradata \
    oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=/u01/app/oracle/recovery_area \
    SECURITY_UPDATES_VIA_MYORACLESUPPORT=false \
    DECLINE_SECURITY_UPDATES=true \
    
    DECLINE_SECURITY_UPDATES=true  -silent -ignoreSysPrereqs -ignorePrereq -waitForCompletion

正在啟動 Oracle Universal Installer...

檢查臨時空間: 必須大于 120 MB。 實際為 42865 MB 通過
檢查交換空間: 必須大于 150 MB。 實際為 3967 MB 通過
準(zhǔn)備從以下地址啟動 Oracle Universal Installer /tmp/OraInstall2017-05-07_03-12-07AM. 請稍候...可以在以下位置找到本次安裝會話的日志:
/u01/app/oracle/oraInventory/logs/installActions2017-05-07_03-12-07AM.log

Oracle Database 11g 的 安裝 已成功。
請查看 '/u01/app/oracle/oraInventory/logs/silentInstall2017-05-07_03-12-07AM.log' 以獲取詳細資料。

以 root 用戶的身份執(zhí)行以下腳本:
1. /u01/app/oracle/oraInventory/orainstRoot.sh
2. /u01/app/oracle/product/11.2.0/dbhome_1/root.sh

安裝中要執(zhí)行的腳本

root用戶執(zhí)行

/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/11.2.0/dbhome_1/root.sh

安裝后的配置

備份root.sh腳本

cd ${ORACLE_HOME}
cp -p root.sh root.sh.bak

配置和更新數(shù)據(jù)庫(可選)


/usr/local/bin/oraenv
sqlplus / AS SYSDBA
SQL>@?/rdbms/admin/utlrp.sql

生成客戶端靜態(tài)庫

$ORACLE_HOME/bin/genclntst

ar: creating /u01/app/oracle/product/11.2.0/dbhome_1/lib/libclntst11.a
Created /u01/app/oracle/product/11.2.0/dbhome_1/lib/libclntst11.a

開關(guān)數(shù)據(jù)庫選項

chopt [ enable | disable] db_option

Value       Description
dm          Oracle Data Mining RDBMS Files
dv          Oracle Database Vault
lbac            Oracle Label Security
olap            Oracle OLAP
partitioning    Oracle Partitioning
rat         Oracle Real Application Testing
ode_net     Oracle Database Extensions for .NET 1.x
ode_net_2   Oracle Database Extensions for .NET 2.0

使配置生效

srvctl stop database -d myDb
chopt enable lbac
srvctl start database -d myDb

dbca建庫

netca創(chuàng)建監(jiān)聽

netmgr配置網(wǎng)絡(luò)服務(wù)

修改tnsnames.ora和listener.ora

cd ${ORACLE_HOME}/network/admin/

# listener.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = SID_NAME)
      (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:/u01/app/oracle/product/11.2.0/dbhome_1/lib/libclntst11.a")
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.116.199)(PORT = 1521))
    )
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

ADR_BASE_LISTENER = /u01/app/oracle

tnsnames.ora修改SERVICE_NAME為服務(wù)名,默認(rèn)orcl

# tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

AMLUAT =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.116.199)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = SERVICE_NAME)
    )
  )

ORACLR_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (CONNECT_DATA =
      (SID = CLRExtProc)
      (PRESENTATION = RO)
    )
  )

LISTENER_AMLUAT =
  (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

啟動監(jiān)聽

lsnrctl start

sqlplus登錄

sqlplus /nolog
SQL>CONNECT SYS AS SYSDBA

啟動數(shù)據(jù)庫

方式一:SQL>startup
方式二:dbstart

關(guān)閉是shutdown

SQL Developer

jdk安裝略

cd $ORACLE_HOME/sqldeveloper/
./sqldeveloper.sh

解鎖賬戶

ALTER USER account IDENTIFIED BY password ACCOUNT UNLOCK;

設(shè)置Oracle開機啟動

vim /etc/oratab

orcl:/u01/app/oracle/product/11.2.0/dbhome_1:N

N改為Y

vim /etc/rc.d/rc.local

su oracle -lc "/u01/app/oracle/product/11.2.0/dbhome_1/bin/lsnrctl start"
su oracle -lc /u01/app/oracle/product/11.2.0/dbhome_1/bin/dbstart

如果遇到以下錯誤:

ORACLE_HOME_LISTENER is not SET, unable to auto-start Oracle Net Listener

換中方式執(zhí)行第二條命令,相當(dāng)于加上參數(shù)$ORACLE_HOME

su oracle -lc "/u01/app/oracle/product/11.2.0/dbhome_1/bin/dbstart /u01/app/oracle/product/11.2.0/dbhome_1"

Oracle卸載

正常卸載

cd ${ORACLE_HOME}/deinstall/
./deinstall

如果是安裝失敗,需要下載卸載器程序

p13390677_112040_platform_7of7.zip

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 最近公司購買了一臺新的服務(wù)器,我負(fù)責(zé)給這臺服務(wù)器安裝oracle ,磕磕絆絆的終于裝好了,但是卻花了不少時間,算起...
    testerPM閱讀 9,485評論 3 8
  • centos安裝oracle 11g 完全圖解 摘要: 說明:Linux服務(wù)器操作系統(tǒng):CentOS 5.8 32...
    劍御閱讀 5,221評論 1 11
  • 近兩天在CentOS7上安裝了oracle,在網(wǎng)上找了一些資料,發(fā)現(xiàn)不是很全面,為了方便以后再次安裝,所以...
    即墨雨閱讀 6,992評論 1 11
  • 說明:實驗過的版本:CentOS 6.5 和 CentOS 7 1.硬件檢查 內(nèi)存大于1G(使用虛擬機安裝時內(nèi)存要...
    飛翼_U閱讀 2,538評論 0 3
  • 今天又是炎熱的一天,不過內(nèi)心卻是平靜如水的,因為知道炎熱的日子總會過去,涼爽的時候總會到來。也因為有各種避暑的方法...
    西涼水哥閱讀 631評論 0 50

友情鏈接更多精彩內(nèi)容