說明:實(shí)驗(yàn)過的版本:CentOS 6.5 和 CentOS 7
1.硬件檢查
內(nèi)存大于1G(使用虛擬機(jī)安裝時(shí)內(nèi)存要稍微大一些备禀,否則安裝檢查不通過)
查看內(nèi)存大小#cat?/proc/meminfo
交換分區(qū)是內(nèi)存的1.5倍,可根據(jù)實(shí)際情況調(diào)整
查看交換分區(qū)大小#grepSwapTotal/proc/meminfo
硬盤空間要滿足所需軟件的大小匕荸,要求/tmp分區(qū)不少于400M伍纫,安裝目錄應(yīng)大于4G:
查看磁盤空間使用情況#df?–h
查看目錄空間大小#du?-ch
2.軟件檢查湿故,安裝oracle所依賴的組件包
1.binutils-2.17.50.0.6
2.compat-libstdc++-33-3.2.3
3.elfutils-libelf-0.125
4.elfutils-libelf-devel-0.125
5.elfutils-libelf-devel-static-0.125
6.gcc-4.1.2
7.gcc-c++-4.1.2
8.glibc-2.5-24
9.glibc-common-2.5
10.glibc-devel-2.5
11.glibc-headers-2.5
12.kernel-headers-2.6.18
13.pdksh-5.2.14
14.libaio-0.3.106
15.libaio-devel-0.3.106
16.libgcc-4.1.2
17.libgomp-4.1.2
18.libstdc++-4.1.2
19.libstdc++-devel-4.1.2
20.make-3.81
21.numactl-devel-0.9.8.i386
22.sysstat-7.0.2
23.unixODBC-2.2.11
24.unixODBC-devel-2.2.11
包檢查命令:#rpm?–qa?|grep軟件包名稱
包安裝命令:#rpm?–ivh軟件包名稱?或
#yum?install軟件包名稱
3 操作系統(tǒng)準(zhǔn)備工作
關(guān)閉防火墻
#chkconfig?iptables?off??//永久關(guān)閉防火墻或
#service?iptabels?stop??//暫時(shí)關(guān)閉防火墻池充,重啟系統(tǒng)后會自動打開
關(guān)閉selinux
[root@CentOS?tmp]#vim?/etc/selinux/config
設(shè)置SELINUX=disabled
在/etc/hosts文件中添加主機(jī)名
[root@CentOS?tmp]#vim?/etc/hosts
添加192.168.206.135?CentOS
127.0.0.1???localhost?localhost.localdomain?localhost4?localhost4.localdomain4
::1?????????localhost?localhost.localdomain?localhost6?localhost6.localdomain6
192.168.220.158chances
#hostname
顯示chances
4創(chuàng)建安裝用戶躯保、組、目錄
4.1創(chuàng)建安裝用戶和組
root@CentOS?tmp]#groupadd?oinstall
[root@CentOS?tmp]#groupadd?dba
[root@CentOS?tmp]#useradd?-g?oinstall?-G?dba?oracle
[root@CentOS?tmp]#passwd?oracle
[root@CentOS?tmp]#id?oracle
uid=1001(oracle)?gid=1001(oinstall)組=1001(oinstall),1002(dba)
4.2創(chuàng)建軟件安裝目錄
[root@CentOS?~]#mkdir?-p?/opt/oracle/product/112010/db_1
[root@CentOS?~]#mkdir?/opt/oracle/oradata
[root@CentOS?~]#mkdir?/opt/oracle/raInventory
[root@CentOS?~]#mkdir?/opt/oracle/flash_recovery_area
[root@CentOS?~]#chown?-R?oracle:oinstall?/opt/oracle
[root@CentOS?~]#chmod?-R?775?/opt/oracle
4.3修改用戶環(huán)境變量
#vi?home/sc-oracle/.bash_profile用oracle用戶編輯加入以下內(nèi)容
#?.bash_profile
#?Get?the?aliases?and?functions
if?[?-f?~/.bashrc?];?then
.?~/.bashrc
fi
#?User?specific?environment?and?startup?programs
PATH=$PATH:$HOME/bin
export?PATH
#?For?Oracle
export??ORACLE_BASE=/opt/oracle;
export??ORACLE_HOME=/opt/oracle/product/112010/db_1
export??ORACLE_SID=ORCL;
export??PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export?LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
if?[?$USER?=?"oracle"?];?then
if?[?$SHELL?=?"/bin/ksh"?];?then
ulimit?-p?16384
ulimit?-n?65536
else
ulimit?-u?16384?-n?65536
fi
fi
使環(huán)境變量生效
$?source?.bash_profile
查看命令:$?env
5配置系統(tǒng)環(huán)境
5.1修改內(nèi)核參數(shù)
#vi?/etc/sysctl.conf?,在行末添加以下內(nèi)容
kernel.shmall?=?4294967296
kernel.shmmni?=?4096
kernel.sem?=?250?32000?100?128
fs.file-max?=?6553600
net.ipv4.ip_local_port_range?=?1024?65000
net.core.rmem_default=262144
net.core.rmem_max=262144
net.core.wmem_default=262144
net.core.wmem_max=262144
運(yùn)行sysctl?-p應(yīng)用以上參數(shù)
5.2修改進(jìn)程數(shù)和最大會話數(shù)
#vi?/etc/security/limits.conf行末添加以下內(nèi)容
#use?fororacle
oraclesoft?nproc?2047
oraclehard?nproc?16384
oraclesoft?nofile?1024
oraclehard?nofile?65536
紅色部分為實(shí)際oracle用戶
5.3關(guān)聯(lián)設(shè)置
#vi?/etc/pam.d/login行末添加以下內(nèi)容:
session??required???/lib64/security/pam_limits.so
session??required???pam_limits.so
5.4修改/etc/profile
[root@CentOS?~]#?vim?/etc/profile
添加以下內(nèi)容:
if?[?$USER?=?"oracle"?];?then
if?[?$SHELL?=?"/bin/ksh"?];?then
ulimit?-p?16384
ulimit?-n?65536
else
ulimit?-u?16384?-n?65536
fi
fi
在root用戶下贩猎,使用命令source?profile使環(huán)境變量生效
#source/etc/profile
6正式安裝
6.1解壓oracle安裝文件
Oracle?11g安裝包:將安裝包上傳至服務(wù)器/opt/oracle/?下面,這兩個(gè)包屬于oracle用戶
linux.x64_11gR2_database_1of2.zip萍膛、
linux.x64_11gR2_database_2of2.zip
安裝包解壓命令(使用oracle用戶解壓?)
$unzip?linux.x64_11gR2_database_1of2.zip
$unziplinux.x64_11gR2_database_2of2.zip
解壓完成后/opt/oracle下會生成database目錄
6.2編輯oracle數(shù)據(jù)庫安裝應(yīng)答文件
1吭服、/opt/oracle/database/response下有有db_install.rsp、dbca.rsp和netca.rsp三個(gè)應(yīng)答文件蝗罗,分別數(shù)據(jù)庫安裝文件艇棕、建立數(shù)據(jù)庫實(shí)例和監(jiān)聽配置安裝文件
Vidb_install.rsp
修改以下內(nèi)容
oracle.install.option=INSTALL_DB_SWONLY??//29?行?安裝類型
ORACLE_HOSTNAME=chances?//37?行?主機(jī)名稱
UNIX_GROUP_NAME=oinstall?//42?行?安裝組
INVENTORY_LOCATION=/opt/oracle/oraInventory?//47?行?INVENTORY目錄
SELECTED_LANGUAGES=zh_CN?//78?行?選擇語言
ORACLE_HOME=/opt/oracle/product/112010/db_1?//83?行?oracle_home
ORACLE_BASE=/opt/oracle?//88?行?oracle_base
oracle.install.db.InstallEdition=EE?//99?行?oracle版本
oracle.install.db.isCustomInstall=true?//108行?自定義安裝
oracle.install.db.DBA_GROUP=dba?//142行?dba用戶組
oracle.install.db.OPER_GROUP=oinstall?//147行?oper用戶組
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE?//160行?數(shù)據(jù)庫類型
oracle.install.db.config.starterdb.globalDBName=orcl?//165行?globalDBName
oracle.install.db.config.starterdb.SID=orcl?//170行?SID
oracle.install.db.config.starterdb.memoryLimit=512?//192行?自動管理內(nèi)存的最小內(nèi)存(M)
oracle.install.db.config.starterdb.password.ALL=oracle?//233行?設(shè)定所有數(shù)據(jù)庫用戶使用同一個(gè)密碼
DECLINE_SECURITY_UPDATES=true?//385行?設(shè)置安全更新
進(jìn)行靜默安裝Oracle軟件
環(huán)境變量都要參照前面定義好的來填
6.3安裝
使用oracle用戶安裝
#su-oracle
[oracle@CentOS?database]$./runInstaller-silent-responseFile?/opt/oracle/response/db_install.rsp-ignorePrereq
接下來就是等待(有點(diǎn)長,不要著急)串塑,安裝過程中沼琉,如果提示[WARNING]不必理會,此時(shí)安裝程序仍在后臺進(jìn)行桩匪,如果出現(xiàn)[FATAL]打瘪,則安裝程序已經(jīng)停止了。
可以在以下位置找到本次安裝會話的日志:
/optoracle/oraInventory/logs/installActions2015-06-08_04-00-25PM.log
當(dāng)出現(xiàn)以下提示時(shí),代表安裝成功:
按照要求執(zhí)行腳本闺骚。
打開終端彩扔,以root身份登錄,執(zhí)行腳本:
[root@CentOS?~]#/opt/oracle/inventory/orainstRoot.sh
[root@CentOS?~]#/opt/oracle/product/112010/root.sh
6.4以靜默方式配置監(jiān)聽
編輯oracle安裝目錄下的netca.rsp應(yīng)答文件僻爽,地址為:/opt/oracle/database/response/netca.rsp虫碉,主要查看以下參數(shù)配置:
INSTALL_TYPE=""custom""安裝的類型
LISTENER_NUMBER=1監(jiān)聽器數(shù)量
LISTENER_NAMES={"LISTENER"}監(jiān)聽器的名稱列表
LISTENER_PROTOCOLS={"TCP;1521"}監(jiān)聽器使用的通訊協(xié)議列表
LISTENER_START=""LISTENER""監(jiān)聽器啟動的名稱
運(yùn)行安裝命令:
$ORACLE_HOME/bin/netca?/silent?/responseFile?/home/oracle/database/response/netca.rsp
成功運(yùn)行后,在/opt/oracle/product/112010/network/admin/中生成listener.ora和sqlnet.ora
通過netstat命令可以查看1521端口正在監(jiān)聽胸梆。
Yum安裝netstat軟件敦捧,軟件包是在net-tools中。
[root@CentOS?~]#yum?install?net-tools
[root@CentOS?~]#netstat?-tnulp?|?grep?1521
6.5增加數(shù)據(jù)庫實(shí)例
1碰镜、修改/opt/oracle/database/response/dbca.rsp(就是解壓安裝文件目錄下的)
根據(jù)數(shù)據(jù)庫建立方式的不同編輯不同的數(shù)據(jù)庫庫選項(xiàng)兢卵。
比如在本次安裝過程中設(shè)置了下列參數(shù):(注意下面參數(shù)視情況而定啦不要照抄該選項(xiàng)原文件都有說明的)
RESPONSEFILE_VERSION?="11.2.0"http://不能更改
OPERATION_TYPE?="createDatabase"
GDBNAME?="orcl"http://數(shù)據(jù)庫的名字
SID?="orcl"http://對應(yīng)的實(shí)例名字
TEMPLATENAME?="General_Purpose.dbc"http://建庫用的模板文件
SYSPASSWORD?="oracle"http://SYS管理員密碼
SYSTEMPASSWORD?="oracle"http://SYSTEM管理員密碼
DATAFILEDESTINATION?=/opt/oracle/oradata//數(shù)據(jù)文件存放目錄
RECOVERYAREADESTINATION=/opt/oracle/flash_recovery_area//恢復(fù)數(shù)據(jù)存放目錄
CHARACTERSET?="ZHS16GBK"/字符集,重要!!!建庫后一般不能更改洋措,所以建庫前要確定清楚济蝉。
TOTALMEMORY?="512"http://oracle內(nèi)存5120MB
2、安裝
[oracle@cms-1database]$$ORACLE_HOME/bin/dbca?-silent?-responseFile?/opt/oracle/database/response/dbca.rsp
Copying database files
1%?complete
4%?complete
Creating?database?files
8%?complete
28%?complete
42%?complete
Adding?Oracle?XML?DB
52%?complete
58%?complete
Adding?Oracle?Intermedia
Adding?Oracle?OLAP
72%?complete
78%?complete
Completing?Database?Creation
89%?complete
99%?complete
100%?complete
Look?at?the?log?file?"/opt/oracle/product/10.2.0/db_1/cfgtoollogs/dbca/orcl/orcl.log"?for?further?details.
最后提示創(chuàng)建成功后
3菠发、修改vi?/etc/oratab
ora10g:/oracle/product/10.2.0.1/db_1:N
改為:
ora10g:/oracle/product/10.2.0.1/db_1:Y
6.6 驗(yàn)證
[sc-oracle@cms-1?~]$ORACLE_HOME/bin/dbstart
[sc-oracle@cms-1?~]$?sqlplus?/?as?sysdba
SQL*Plus:?Release?10.2.0.1.0?-?Production?on?Fri?May?24?18:21:20?2013
Copyright?(c)?1982,?2005,?Oracle.??All?rights?reserved.
Connected?to:
Oracle?Database?10g?Enterprise?Edition?Release?10.2.0.1.0?-?64bit?Production
With?the?Partitioning,?OLAP?and?Data?Mining?options
SQL> startup
此時(shí)王滤,有可能會報(bào)ORA-01078:initorcl.ora找不到,那就去看下方的錯(cuò)誤處理滓鸠。
SQL> quit
最后達(dá)到的效果:
6.7創(chuàng)建視圖
[sc-oracle@cms-1?~]$?sqlplus?/?as?sysdba
@/opt/oracle/product/10.2.0/rdbms/admin/catalog.sql;
@/opt/oracle/product/10.2.0/rdbms/admin/catexp7.sql;
@/opt/oracle/product/10.2.0/rdbms/admin/catblock.sql;
@/opt/oracle/product/10.2.0/rdbms/admin/catproc.sql;
@/opt/oracle/product/10.2.0/rdbms/admin/catoctk.sql;
換system?登陸(#connectSYSTEM/oracle),設(shè)置的system的密碼為?oracle
@/opt/oracle/product/10.2.0/rdbms/admin/owminst.plb;@/opt/oracle/product/10.2.0/sqlplus/admin/pupbld.sql;
@/opt/oracle/product/10.2.0/sqlplus/admin/help/hlpbld.sql;(param:helpus)--//.sql)
至此:終于完了雁乡。
7 錯(cuò)誤處理
如在安裝過程中碰到以下錯(cuò)誤,下面的信息可參考
7.1ORA-01078
[oracle@chances~]$?sqlplus?/?as?sysdba
SQL*Plus:?Release?11.2.0.1.0?Production?on?Sat?Feb?16?19:43:43?2013
Copyright?(c)?1982,?2009,?Oracle.?All?rights?reserved.
Connected?to?an?idle?instance.
SQL>?startup
ORA-01078:failure?in?processing?system?parameters
LRM-00109:?could?not?open?parameter?file?'/opt/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/initorcl.ora'
原理:在oracle9i和oracle10g中糜俗,數(shù)據(jù)庫默認(rèn)將使用spfile啟動數(shù)據(jù)庫踱稍,如果spfile不存在,則就會出現(xiàn)上述錯(cuò)誤
解決方案:
[oracle@chances?~]$
把/opt/oracle/product/112010/db_1/dbs/init.ora
復(fù)制到同級目錄并改名為init***.ora
修改新參數(shù)文件里面的<$ORACLE_HOME>為絕對路徑悠抹,然后把db_name之類的東西改成自己創(chuàng)建的數(shù)據(jù)庫名稱的就好珠月。
然后重新啟動:
[sc-oracle@cms-1?~]$?sqlplus?/?as?sysdba
SQL*Plus:?Release?10.2.0.1.0?-?Production?on?Fri?May?24?18:21:20?2013
Copyright?(c)?1982,?2005,?Oracle.??All?rights?reserved.
Connected?to:
Oracle?Database?10g?Enterprise?Edition?Release?10.2.0.1.0?-?64bit?Production
With?the?Partitioning,?OLAP?and?Data?Mining?options
SQL>?startup
此時(shí)有可能會報(bào):
ORA-00205:error?in?identifying?control?file?,check?alert?log?for?more?info
7.2ORA-00205
ORA-00205:error?in?identifying?control?file?,check?alert?log?for?more?info
解決方法:
報(bào)錯(cuò)說控制文件有錯(cuò),讓去看日志楔敌,先去看日志:
cd$ORACLE_BASE/diag/rdbms/$ORACLE_SID/$ORACLE_SID/alert
catlog.xml
一般會發(fā)現(xiàn):
大概就是控制文件的問題啤挎,去相應(yīng)的目錄下看文件也不存在,原因就是我們只是創(chuàng)建了數(shù)據(jù)庫實(shí)例卵凑,沒有創(chuàng)建數(shù)據(jù)庫庆聘,我們要手動創(chuàng)建數(shù)據(jù)庫,生成啟動數(shù)據(jù)庫的文件勺卢,比如:/opt/oracle/product/112010/db_1/dbs/下面的控制文件?和/opt/oracle_11/oradata/orcl/下面的數(shù)據(jù)文件:
把下方的建庫腳本復(fù)制到orcl.sql里面上傳到服務(wù)器
CREATE?DATABASE?orcl
USER?SYS?IDENTIFIED?BY?sys
USER?SYSTEM?IDENTIFIED?BY?system
LOGFILE
GROUP?1?('/opt/oracle_11/oradata/orcl/redo01.log')?SIZE?1024M,
GROUP?2?('/opt/oracle_11/oradata/orcl/redo02.log')?SIZE?1024M,
GROUP?3?('/opt/oracle_11/oradata/orcl/redo03.log')?SIZE?1024M,
GROUP?4?('/opt/oracle_11/oradata/orcl/redo04.log')?SIZE?1024M,
GROUP?5?('/opt/oracle_11/oradata/orcl/redo05.log')?SIZE?1024M
MAXLOGFILES?5
MAXLOGMEMBERS?5
MAXLOGHISTORY?200
MAXDATAFILES?10000
MAXINSTANCES?1
CHARACTER?SET?AL32UTF8
NATIONAL?CHARACTER?SET?AL16UTF16
datafile??'/opt/oracle_11/oradata/orcl/system01.dbf'??size?2048M??REUSE
EXTENT?MANAGEMENT?LOCAL
sysaux?datafile?'/opt/oracle_11/oradata/orcl/sysaux01.dbf'?size?2048M?REUSE
default?temporary?tablespace?temp
tempfile?'/opt/oracle_11/oradata/orcl/temp01.dbf'?size?2048M?REUSE
undo?tablespace?UNDOTBS1
datafile?'/opt/oracle_11/oradata/orcl/undotbs01.dbf'?size?4096M??REUSE
AUTOEXTEND?off
default?tablespace?DATA
datafile?'/opt/oracle_11/oradata/orcl/data01.dbf'?size?8192M??REUSE
EXTENT?MANAGEMENT?LOCAL
SEGMENT?SPACE?MANAGEMENT?AUTO;
然后重新啟動:
[sc-oracle@cms-1?~]$?sqlplus?/?as?sysdba
SQL*Plus:?Release?10.2.0.1.0?-?Production?on?Fri?May?24?18:21:20?2013
Copyright?(c)?1982,?2005,?Oracle.??All?rights?reserved.
Connected?to:
Oracle?Database?10g?Enterprise?Edition?Release?10.2.0.1.0?-?64bit?Production
With?the?Partitioning,?OLAP?and?Data?Mining?options
SQL>?startupnomount?(這個(gè)命令是啟動實(shí)例伙判,但是不啟動數(shù)據(jù)庫,一般創(chuàng)建數(shù)據(jù)庫的時(shí)候用這?個(gè)命令)
SQL>@??/*****/orcl.sql
執(zhí)行完之后會告訴你數(shù)據(jù)庫創(chuàng)建完畢
這時(shí)候再用?startup?命令就不會報(bào)錯(cuò)了黑忱。
7.3ORA-01102
報(bào)錯(cuò):
SQL>?startup?mount
ORACLE?instance?started.
Total?System?Global?Area??608174080?bytes
Fixed?Size?????????????????1220844?bytes
Variable?Size????????????176164628?bytes
Database?Buffers??????427819008?bytes
Redo?Buffers?????????????2969600?bytes
ORA-01102:cannot?mount?database?in?EXCLUSIVE?mode
解決方案:
[oracle@chances~]$?ls?lk*
/oracle/oracle/product/?112010/db_1/dbs/lkSIMPLY
lkSIMPLYstartup
lk文件沒有被刪除宴抚。將它刪除掉
[oracle@chances~]$?rm?lk*
參考資料:http://hi.baidu.com/120001240/item/abeda41f8c3102e787ad4e01
7.4ORA-01079
ORA-01079:?ORACLE?database?was?not?properly?created,?operation?aborted
原因是數(shù)據(jù)庫創(chuàng)建失敗勒魔,需要手動創(chuàng)建數(shù)據(jù)庫,看ORA-00205里面的解決方法酱塔,手動創(chuàng)建數(shù)據(jù)庫沥邻。
截止到目前,就ok了羊娃。(⊙o⊙)唐全,為什么沒有表情包呢。蕊玷。