linux安裝Oracle12C

參考文章:linux CentOS7安裝oracle12c

安裝步驟+所遇問題

1.安裝步驟(親測沒坑,完全正常,如果存在報錯,檢查是不是敲錯字母了,或者複製粘貼的時候丟失字母了)

一.環境準備、用戶組創建、修改系統內核參數、修改用戶配置
1.安裝準備
systemctl stop firewalld.service #關閉防火牆
systemctl disable firewalld.service #禁止防火牆開機啓動
systemctl status firewalld.service  #查看防火牆狀態
2.關閉selinux
vi /etc/selinux/config #編輯文件
SELINUX=disabled  #修改的內容
3.修改host名稱(可以省略)
# 在文件末尾加上192.168.159.129 oracle12c    名稱自己取,前兩行後面也加上名稱,開始沒加最後本機navicat連一直報監聽找不着,實際監聽是開了
#127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 oracle12c
#::1         localhost localhost.localdomain localhost6 localhost6.localdomain6 oracle12c
#192.168.159.129 oracle12c
vi /etc/hosts
4.yum安裝必要安裝包(有錯誤就多執行幾次)
yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*i686 compat-libstdc++-33*.devel compat-libstdc++-33 compat-libstdc++-33*.devel gcc gcc-c++ glibc glibc*.i686 glibc-devel glibc-devel*.i686 ksh libaio libaio*.i686 libaio-devel libaio-devel*.devel libgcc libgcc*.i686 libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.devel libXi libXi*.i686 libXtst libXtst*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686
# 檢查是否安裝成功(31個安裝包)
rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel
5.創建用戶組
# 創建oinstall和dba組
groupadd oinstall
groupadd dba
# 創建oracle用戶
useradd -g oinstall -G dba oracle    
# 設置oracle密碼
passwd oracle #輸入密碼,確認密碼後 passwd: all authentication tokens updated successfully.
# 查看創建結果
id oracle
6.修改內核參數
vi /etc/sysctl.conf
# 文件內容添加如下
fs.aio-max-nr = 1048576
fs.file-max = 6815744
# 該參數表示系統任意時刻可以分配的所有共享內存段的總和的最大值(以頁爲單位).其值應不小於
# shmmax/page_size(getconf PAGESIZE可以查詢到).缺省值就是2097152
kernel.shmall = 2097152
#64 位 linux 系統:可取的最大值爲物理內存值 -1byte ,建議值爲多於物理內存的一半,一般取值大於 SGA_MAX_SIZE 即可,
# 可以取物理內存 -1byte.例:內存爲 16G 時,該值爲 16*1024*1024*1024-1 = 17179869183 
kernel.shmmax = 17179869183
# 缺省爲32M,對於oracle來說,該缺省值太低了,通常將其設置爲2G
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 = 1048576

sysctl -p #使配置生效
7.修改用戶限制
vi /etc/security/limits.conf
# 在文件末尾添加下面6行內容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 10240
8.修改用戶登錄庫文件引用
vi /etc/pam.d/login
# 在文件末尾添加下面2行內容
session required /lib64/security/pam_limits.so
session required pam_limits.so
9.修改用戶登錄環境變量
vi /etc/profile
# 在文件末尾添加下面內容
if [ $USER = "oracle" ]; then
    if [ $SHELL = "/bin/ksh" ]; then
        ulimit -p 16384
        ulimit -n 65536
    else
        ulimit -u 16384 -n 65536
    fi
fi
# 使修改的文件生效
source /etc/profile
10.創建安裝目錄,配置安裝目錄權限。
mkdir -p /usr/app/oracle
chown -R oracle:oinstall /usr/app/
chmod -R 775 /usr/app/
11.配置Oracle用戶環境變量
su - oracle #切換用戶
vi ~/.bash_profile # 添加內容如下

# 和創建的安裝目錄路徑一樣
export ORACLE_BASE=/usr/app/oracle
# 指定sid名稱
export ORACLE_SID=orcl

source ~/.bash_profile #使配置生效source .bash_profile

二.數據庫應用安裝
1.使用oracle 用戶,創建數據庫安裝配置文件夾etc
su - oracle #不是oracle用戶就先切換用戶,是就不用執行
cd /home/oracle/ #到oracle目錄下
mkdir etc
2.上傳安裝文件到/home/oracle/目錄下並解壓(上傳文件命令rz,需安裝才能用此命令:yum install -y lrzsz)
su - root #切換到root用戶
yum install -y unzip zip #安裝解壓軟件,已經安裝就不用執行
su - oracle #切換到oracle用戶
unzip xxx.zip #解壓文件
3.複製Oracle配置文件到etc目錄下,並修改配置文件權限
cp /home/oracle/database/response/* /home/oracle/etc/ #複製文件
chmod 700 /home/oracle/etc/*.rsp #修改文件權限
4.修改靜默安裝配置文件db_install.rsp
vi /home/oracle/etc/db_install.rsp
# 修改內容如下
oracle.install.option=INSTALL_DB_SWONLY   #安裝類型
UNIX_GROUP_NAME=oinstall    #安裝組
INVENTORY_LOCATION=/usr/app/oracle/oraInventory   #與上面創建的安裝目錄有關/usr/app/oracle
ORACLE_HOME=/usr/app/oracle/product/12/db_1          #與上面創建的安裝目錄有關/usr/app/oracle
ORACLE_BASE=/usr/app/oracle                          #與上面創建的安裝目錄有關/usr/app/oracle
oracle.install.db.InstallEdition=EE                  #企業版本
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=oinstall
oracle.install.db.OSBACKUPDBA_GROUP=oinstall
oracle.install.db.OSDGDBA_GROUP=oinstall
oracle.install.db.OSKMDBA_GROUP=oinstall
oracle.install.db.OSRACDBA_GROUP=oinstall
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE  #數據庫類型
oracle.install.db.config.starterdb.globalDBName=orcl    #數據庫名
oracle.install.db.config.starterdb.SID=orcl                #實例名
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
DECLINE_SECURITY_UPDATES=true
oracle.install.db.config.starterdb.characterSet=AL32UTF8
5.開始安裝,執行db_install.rsp
cd /home/oracle/database;
./runInstaller -silent -responseFile /home/oracle/etc/db_install.rsp#等待安裝完成:提示[WARNING]不用管,出現[FATAL]則安裝已經停止,完成後顯示:Successfully Setup Software.
6.切換到root用戶,修改數據庫配置
su - root
/usr/app/oracle/oraInventory/orainstRoot.sh
/usr/app/oracle/product/12/db_1/root.sh
7.修改oracle用戶環境變量
su - oracle
vi ~/.bash_profile
# 後面追加內容如下
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export ORACLE_HOME=/usr/app/oracle/product/12/db_1
export PATH=$PATH:$ORACLE_HOME/bin
export LANG="zh_CN.UTF-8"
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"
export NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss'

source .bash_profile #執行命令使環境變量生效
8.配置監聽程序
cd /home/oracle;
netca /silent /responsefile /home/oracle/etc/netca.rsp
9.啓動監聽
lsnrctl start
10.靜默建庫配置文件修改
mkdir /usr/app/oracle/oradata;#創建數據文件存放的目錄

vi etc/dbca.rsp
#修改如下
gdbName=orcl
sid=orcl
characterSet=AL32UTF8
listeners=LISTENER
databaseConfigType=SI
datafileDestination=/usr/app/oracle/oradata   #指定數據文件存放的目錄
recoveryAreaDestination=/usr/app/oracle/flash_recovery_area     #恢復數據存放目錄
totalMemory=1638    #totalMemory ="1638" 爲1638MB,物理內存2G*80%
templateName=/usr/app/oracle/product/12/db_1/assistants/dbca/templates/General_Purpose.dbc    #不填寫的時候報了[FATAL] [DBT-10503] 指定的模板文件無效。
nationalCharacterSet=AL16UTF16  #國家字符集2個值AL16UTF16或UTF8,默認值是AL16UTF16,默認值就可不用改
sysPassword=oracle12c   #指定sys用戶密碼
systemPassword=oracle12c    #指定system用戶密碼oracleHomeUserPassword=oracle12c 
11.執行靜默建庫
cd /home/oracle;
dbca -silent -createDatabase -responseFile /home/oracle/etc/dbca.rsp
12.測試登錄
sqlplus / as sysdba

注:每次虛擬機重啓執行命令都要開啓監聽,打開數據庫
su - oracle    #切換到oracle用戶
lsnrctl start #開啓監聽
sqlplus / as sysdba
startup
****把上面步驟放到開機自動執行****切換root用戶執行下面語句
vi /etc/oratab #修改此文件,讓sqlplus / as sysdba;startup;不用手動執行
orcl:/u01/app/oracle/product/11.2.0.4/db_1:N    #這裏把N改成Y,數據庫開機自動打開
vi /etc/rc.local #修改此文件,數據庫監聽和服務開機自啓
su - oracle -lc "/usr/app/oracle/product/12/db_1/bin/lsnrctl start" #與安裝目錄相關
su - oracle -lc /usr/app/oracle/product/12/db_1/bin/dbstart #與安裝目錄相關修改DB啓動配置文件(安裝目錄中的dbstart文件)vi /usr/app/oracle/product/12/db_1/bin/dbstart將ORACLE_HOME_LISTNER=$1中的$1修改爲/usr/app/oracle/product/12/db_1/  #oracle安裝路徑

2.遇到問題

問題1:failure in processing system parameters

.

解決辦法:

路徑下缺少文件

問題2:MEMORY_TARGET not supportes on this system

虛擬機內存太小,需擴大內存

擴大內存方式:內存擴大

問題3:Parameter db_recovery_file_dest destination string cannot be translated

查看initorcl.ora文件:$cat /usr/app/oracle/product/12/db_1/dbs/initorcl.ora

該路徑下不存在這個文件夾

創建文件夾:$mkdir  fast_recovery_area

startup mount pfile='/usr/app/oracle/product/12/db_1/dbs/initorcl.ora';(這句話不記得幹什麼的)

問題4:創建數據庫表表空間報錯

文件夾沒有權限創建文件

chown -R oracle:oinstall /usr/app/oracle/oradata/hussar

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章