在Linux系統上安裝Oracle資料庫

來源:互聯網
上載者:User

標籤:home   image   dns   重啟   options   退出   sel   5.0   efi   

 

前期準備:我用的是虛擬機器上的CentOS 64位系統。所以需要設定網卡,時間,EPEL源,安裝一些必備的軟體。

  1.1在虛擬機器上安裝好Linux系統後選擇虛擬機器設定—>網路介面卡—>網路連接—>橋接模式

1.2然後進入系統配置網卡

永久修改:

vi /etc/sysconfig/network-scripts/ifcfg-eth0

 

DEVICE=eth0(裝置名稱) 

TYPE=Ethernet(網路類型)

ONBOOT=yes(開機自啟動)

BOOTPROTO=static(靜態ip)  dhcp是動態ip  none 是不指定

IPADDR=192.168.1.21

NETMASK=255.255.255.0

GATEWAY=192.168.1.1

NETWORK=192.168.1.0

DNS1=192.168.1.1

 

立即生效:

service network restart

 

1.3關閉防火牆 :在使用網路程式時要先關閉防火牆,不然是串連不上的

1) 永久性生效,重啟後不會複原
開啟:chkconfig iptables on
關閉:chkconfig iptables off

2) 即時生效,重啟後複原
開啟:service iptables start
關閉:service iptables stop

如果是firewall防火牆

停止: systemctl stop firewalld.service

禁止開機啟動:systemctl disable firewalld.service

啟動:systemctl start firewalld.service

開機啟動:systemctl enable firewalld.service

 

 

1.4設定系統時間

 

手動設定硬體時間

hwclock --set --date="05/1/2015 19:24"

時間格式:月/日/年空格時:分:秒

---------------

將硬體時間寫入系統時間

hwclock --hctosys

clock --hctosys

 

1.5設定EPEL源

rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

 

1.6安裝解壓縮工具

yum install unzip

 

下面就開始正式安裝

2.1 安裝oracle-rdbms-server-11gR2-preinstall

在Linux上安裝oracle資料庫,在環境準備方面,例如該安裝的RPM包,該調整的核心參數等,不僅較為複雜,有些參數值還會因為人工設定的不合理而對日後的運行帶來一定的影響,也是整個安裝過程中最耗時的部分。在oracle linux 6_64bit上,提供了oracle-rdbms-server-11gR2-preinstall包,可以自動化的將需要安裝的rpm包,需要調整的核心參數自動化的處理,對DBA安裝資料庫確實節省了不少的時間。在oracle linux 5和oracle linux 4上有一個相似功能的包叫oracle-validated

他所起的作用:

       (1)自動安裝oracle所需的RPM包

       (2)自動建立oracle使用者和group組

       (3)自動設定/etc/sysctl.conf核心參數

       (4)自動設定/etc/security/limits.conf參數

       (5)關閉NUMA=OFF (關閉非一致記憶體訪問)

 

安裝前檢查

a、 檢查網路環境,確保網路暢通   

   cat /etc/issue

b、檢查yum是否已安裝

     rpm -qa | grep yum

 

C、安裝oracle-rdbms-server-11gR2-preinstall包 按照下面步驟一步一步來

切換到目錄 /etc/yum.repos.d/

cd /etc/yum.repos.d/

wget http://public-yum.oracle.com/public-yum-ol6.repo(注意:如果沒有安裝wget需要先執行 yum install wget)

 

(vi public-yum-ol6.repo)這裡可以是手動添加,也可以是之前添加好的EPEL源,查看是否安裝上

 

cd /etc/pki/rpm-gpg/

wget http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6 -O RPM-GPG-KEY-oracle

gpg --quiet --with-fingerprint ./RPM-GPG-KEY-oracle

 

yum install oracle-rdbms-server-11gR2-preinstall

 

驗證

[[email protected] yum.repos.d]# cat /etc/passwd |grep oracle

oracle:x:54321:54321::/home/oracle:/bin/bash

[[email protected] yum.repos.d]# cat /etc/group |grep dba

dba:x:54322:oracle

[[email protected] yum.repos.d]#

 

2.2 編輯  /etc/pam.d/login

  vi /etc/pam.d/login

添加以下行:

session    required     /lib64/security/pam_limits.so

session    required     pam_limits.so

 

2.3  編輯   /etc/profile

 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

 

2.4 預先建立安裝目錄

  

    cd /

    建立ORALCE_BASE目錄

    mkdir -p /u01/app/oracle

    建立ORACLE_HOME目錄

    mkdir -p /u01/app/oracle/product/11.2.0/db_1

    建立Oracle資料檔案存放目錄

    mkdir -p /u01/app/oracle/product/11.2.0/oradata

    建立Oracle安裝過程日誌目錄

    mkdir -p /u01/app/oracle/oraInventory

 

2.5  設定目錄的所有者所屬組和許可權

   

   設定app 目錄所有者為oracle使用者及其所屬的oinstall組

   chown -R oracle.oinstall /u01/app

   設定oraInventory目錄所有者為oracle使用者及其所屬的組

   chown -R oracle.dba /u01/app/oracle/oraInventory

   設定app 目錄所屬使用者具有該目錄讀、寫、執行的許可權

   chmod -R 775 /u01/app/

 

2.6 上傳oracle安裝源檔案並且unzip解壓縮到  /u01/app/oracle  目錄下

 

2.7建立 oraInst.loc

 

     建立oraInst.loc檔案並增加內容

     vi /etc/oraInst.loc

     inventory_loc=/u01/app/oracle/oraInventory

     inst_group=oinstall

    設定oracle使用者及其oinstall組對oraInst.loc檔案的所有權

    chown oracle:oinstall /etc/oraInst.loc

   設定oraInst.loc檔案所屬使用者及組具有該目錄讀、寫、執行的許可權

   chmod 664 /etc/oraInst.loc

 

2.8 設定使用者 oracle的環境變數

 

      登入oracle使用者

     su - oracle

    編輯oracle使用者的環境變數

    vi /home/oracle/.bash_profile

在檔案中添加如下:

 

# .bash_profile

 

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

        . ~/.bashrc

fi

 

# User specific environment and startup programs

 

PATH=$PATH:$HOME/bin

# user add

umask 022

export SHELL=/bin/bash

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

export ORACLE_SID=orcl

export ORACLE_UNQNAME=$ORACLE_SID

export ORACLE_OWNER=oracle

export ORACLE_TERM=vt100

export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib

CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib

export CLASSPATH

export ORA_NLS33=$ORACLE_HOME/nls/admin/data

# 設定中文環境

# export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"

export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"

# 通過locale命令查看自己主機的真實LANG情況,或者echo $LANG

# user end

 

執行以下命令讓配置馬上生效或以oracle使用者登入使設定生效

source $HOME/.bash_profile

 

2.9 設定系統臨時空間的大小

注意:預設為實體記憶體的2倍,同時也是為了防止在後續啟動資料庫時報ORA-00845的錯誤,下為錯誤樣本:

SQL> startup ;

ORA-00845: MEMORY_TARGET not supported on this system

 

        調整shm的大小,這樣相對簡單,具體操作如下

        vi /etc/fstab

       修改如下行的設定

       tmpfs /dev/shm tmpfs defaults 0 0

       改成

      tmpfs /dev/shm tmpfs defaults,size=2G 0 0     (我這邊給虛擬機器分的記憶體是1G)

儲存退出

重新mount下shm使其生效

mount -o remount /dev/shm

df -h | grep shm

 

2.10  準備 Oracle11201靜默安裝應答檔案

 

   進入到oracle 的安裝檔案 database目錄

 

    ./runInstaller -silent -debug -force \

    oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0 \

    oracle.install.option=INSTALL_DB_SWONLY \

    UNIX_GROUP_NAME=oinstall \

    INVENTORY_LOCATION=/u01/app/oracle/oraInventory \

    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.DBA_GROUP=dba \

   oracle.install.db.OPER_GROUP=install \

   DECLINE_SECURITY_UPDATES=true

 

 

 

       執行完之後不要亂動,要根據提示查看日誌,直接查看下一個步驟要複製一個SSh視窗進行操作

 

2.11  根據上述提示查看安裝日誌

 

    tail -100f /u01/app/oracle/oraInventory/logs/installActions2014...

查看日誌是否安裝成功,如果安裝失敗需要將所有檔案刪除重新安裝。

 

後期完善:配置Oracle隨作業系統啟動相關

 

3.1配置dbstart和dbshut命令

 

1.安裝好Oracle資料庫後: 執行 dbstart和dbshut會提示:

[[email protected] ~]$ dbstart

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

Usage: /u01/app/oracle/oracle/product/10.2.0/db_1/bin/dbstart ORACLE_HOME

錯誤原因是:dbstart和dbshut指令檔中ORACLE_HOME_LISTNER的設定有問題

 

分別編輯兩個檔案(dbstart和dbshut)

找到:ORACLE_HOME_LISTNER=$1,修改為

ORACLE_HOME_LISTNER=$ORACLE_HOME,命令如下:

[[email protected] ~]$ vi $ORACLE_HOME/bin/dbstart

[[email protected] ~]$ vi $ORACLE_HOME/bin/dbshut

 

提示:

dbstart ORACLE_HOME_LISTNER=$1 參數大約在78行

dbshut ORACLE_HOME_LISTNER=$1 參數大約在50行

vi命令:

:set nu 顯示行號

 

3.2設定開機自動運行oracle

第一步:修改/etc/oratab檔案,命令如下:

[[email protected] ~]$ vi /etc/oratab

 

找到:orcl:/u01/oracle:N   修改為: orcl:/u01/oracle:Y               注意:orcl:/u01/oracle:N 應根據實際情況鑒別,orcl是新建立庫的執行個體名,/u01/oracle是ORACLE_HOME的絕對路徑;Y代表的是隨系統一起啟動;

 

第二步:把lsnrctl start和dbstart添加到rc.local檔案中,命令如下:

[[email protected] ~]# vi /etc/rc.d/rc.local

添加:

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

su oracle -lc /u01/app/oracle/product/11.2.0/db_1/bin/dbstart

注意:第一個命令有空格,所以要用引號的

 

3.3配置Oracle sqlplus 回顯

   yum install -y rlwrap  (如果不設定回顯sqlplus不能刪除字元操作 需要在root使用者下進行)

echo "alias sqlplus=‘rlwrap sqlplus‘" >>/home/oracle/.bash_profile

echo "alias rman=‘rlwrap rman‘" >>/home/oracle/.bash_profile

 

立即生效

source /home/oracle/.bash_profile

 

至此,所有工作都已經完成了。

 

 

 

 

 

 

 

在Linux系統上安裝Oracle資料庫

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.