1. 程式人生 > >Centos7下部署oracle資料庫server端

Centos7下部署oracle資料庫server端

一、安裝Oracle前準備 1.建立執行oracle資料庫的系統使用者和使用者組

  1. [[email protected] ~]$ su root  #切換到root
  2. Password:
  3. [[email protected] sonny]# groupadd oinstall  #建立使用者組oinstall
  4. [[email protected] sonny]# groupadd dba  #建立使用者組dba
  5. [[email protected] sonny]# useradd -g oinstall -g dba -m oracle  #建立oracle使用者,並加入到oinstall和dba使用者組
  6. [[email protected] sonny]# passwd oracle  #設定使用者oracle的登陸密碼,不設定密碼,在CentOS的圖形登陸介面沒法登陸
  7. Changing password for user oracle.
  8. New password:   # 密碼
  9. BAD PASSWORD: The password is shorter than 8 characters
  10. Retype new password:   # 確認密碼
  11. passwd: all authentication tokens updated successfully.
  12. [[email protected]
    sonny
    ]# id oracle # 檢視新建的oracle使用者
  13. uid=1001(oracle) gid=1002(dba) groups=1002(dba)
  14. [[email protected] sonny]#
理論上單例按照需要3種使用者組,實際只建兩個oinstall和dba,後面再安裝oracle資料庫的時候把OSOPER組也設定是dba組。 a.oracle 清單組(一般為oinstall):  OINSTALL 組的成員被視為 Oracle 軟體的“所有者”,擁有對 Oracle 中央清單 (oraInventory) 的寫入許可權。在一個 Linux 系統上首次安裝 Oracle 軟體時,  OUI 會建立 /etc/oraInst.loc 檔案。該檔案指定 Oracle 清單組的名稱(預設為 oinstall)以及 Oracle 中央清單目錄的路徑。 b.資料庫管理員(OSDBA,一般為 dba):  OSDBA 組的成員可通過作業系統身份驗證使用 SQL 以 SYSDBA 身份連線到一個 Oracle 例項。該組的成員可執行關鍵的資料庫管理任務,如建立資料庫、啟動和關  閉例項。該組的預設名稱為dba。SYSDBA 系統許可權甚至在資料庫未開啟時也允許訪問資料庫例項。對此許可權的控制完全超出了資料庫本身的範圍。不要混淆 SYSDBA   系統許可權與資料庫角色 DBA。DBA 角色不包括 SYSDBA 或 SYSOPER 系統許可權。 c.資料庫操作員組(OSOPER,一般為 oper):  OSOPER 組的成員可通過作業系統身份驗證使用 SQL 以 SYSOPER 身份連線到一個 Oracle 例項。這個可選組的成員擁有一組有限的資料庫管理許可權,如管理和執行備份。  該組的預設名稱為oper。SYSOPER 系統許可權甚至在資料庫未開啟時也允許訪問資料庫例項。對此許可權的控制完全超出了資料庫本身的範圍。要使用該組,選擇 Advanced 安裝型別來安裝 Oracle 資料庫軟體。   2.修改作業系統核心引數 在Root使用者下執行以下步驟: 1)修改使用者的SHELL的限制,修改/etc/security/limits.conf檔案 輸入命令:vi /etc/security/limits.conf,按i鍵進入編輯模式,將下列內容加入該檔案。
oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536 編輯完成後按Esc鍵,輸入“:wq”存檔退出 2)修改/etc/pam.d/login 檔案,輸入命令:vi /etc/pam.d/login,按i鍵進入編輯模式,將下列內容加入該檔案。

  1. session required /lib/security/pam_limits.so
  2. session required pam_limits.so
編輯完成後按Esc鍵,輸入“:wq”存檔退出 3)修改linux核心,修改/etc/sysctl.conf檔案,輸入命令: vi /etc/sysctl.conf ,按i鍵進入編輯模式,將下列內容加入該檔案
  1. fs.file-max = 6815744
  2. fs.aio-max-nr = 1048576
  3. kernel.shmall = 2097152
  4. kernel.shmmax = 2147483648
  5. kernel.shmmni = 4096
  6. kernel.sem = 250 32000 100 128
  7. net.ipv4.ip_local_port_range = 9000 65500
  8. net.core.rmem_default = 4194304
  9. net.core.rmem_max = 4194304
  10. net.core.wmem_default = 262144
  11. net.core.wmem_max = 1048576
編輯完成後按Esc鍵,輸入“:wq”存檔退出 4)要使 /etc/sysctl.conf 更改立即生效,執行以下命令。 輸入:sysctl -p 顯示如下:
  1. linux:~ # sysctl -p
  2. net.ipv4.icmp_echo_ignore_broadcasts = 1
  3. net.ipv4.conf.all.rp_filter = 1
  4. fs.file-max = 6815744
  5. fs.aio-max-nr = 1048576
  6. kernel.shmall = 2097152
  7. kernel.shmmax = 2147483648
  8. kernel.shmmni = 4096
  9. kernel.sem = 250 32000 100 128
  10. net.ipv4.ip_local_port_range = 9000 65500
  11. net.core.rmem_default = 4194304
  12. net.core.rmem_max = 4194304
  13. net.core.wmem_default = 262144
  14. net.core.wmem_max = 1048576
5)編輯 /etc/profile ,輸入命令:vi /etc/profile,按i鍵進入編輯模式,將下列內容加入該檔案。
  1. if [ USER</span></span>=<spanclass="hljsstring"><spanclass="hljsstring">"oracle"</span></span>];<spanclass="hljskeyword"><spanclass="hljskeyword">then</span></span></div></div></li><li><divclass="hljslnnumbers"><divclass="hljslnlinehljslnn"datalinenumber="2"></div></div><divclass="hljslncode"><divclass="hljslnline"></div></div></li><li><divclass="hljslnnumbers"><divclass="hljslnlinehljslnn"datalinenumber="3"></div></div><divclass="hljslncode"><divclass="hljslnline"><spanclass="hljskeyword"><spanclass="hljskeyword">if</span></span>[<spanclass="hljsvariable"><spanclass="hljsvariable">USER</span></span> = <span class="hljs-string"><span class="hljs-string">"oracle"</span></span> ]; <span class="hljs-keyword"><span class="hljs-keyword">then</span></span></div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="2"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"> </div></div></li><li><div class="hljs-ln-numbers"><div class="hljs-ln-line hljs-ln-n" data-line-number="3"></div></div><div class="hljs-ln-code"><div class="hljs-ln-line"><span class="hljs-keyword"><span class="hljs-keyword">if</span></span> [ <span class="hljs-variable"><span class="hljs-variable">SHELL = “/bin/ksh” ]; then
  2. ulimit -p 16384
  3. ulimit -n 65536
  4. else
  5. ulimit -u 16384 -n 65536
  6. fi
  7. fi
編輯完成後按Esc鍵,輸入“:wq”存檔退出 6)建立資料庫軟體目錄和資料檔案存放目錄,目錄的位置,根據自己的情況來定,注意磁碟空間即可,這裡我把其放到oracle使用者下,例如: 輸入命令:
  1. mkdir /home/oracle/app
  2. mkdir /home/oracle/app/oracle
  3. mkdir /home/oracle/app/oradata
  4. mkdir /home/oracle/app/oracle/product
7)更改目錄屬主為Oracle使用者所有,輸入命令:
chown -R oracle:oinstall /home/oracle/app
8)配置oracle使用者的環境變數,首先,切換到新建立的oracle使用者下, 輸入:su – oracle ,然後直接在輸入 : vi .bash_profile 按i編輯 .bash_profile,進入編輯模式,增加以下內容:
  1. export ORACLE_BASE=/home/oracle/app
  2. export ORACLE_HOME=ORACLEBASE</span></span>/oracle/product/11.2.0/dbhome1</div></div></li><li><divclass="hljslnnumbers"><divclass="hljslnlinehljslnn"datalinenumber="4"></div></div><divclass="hljslncode"><divclass="hljslnline"></div></div></li><li><divclass="hljslnnumbers"><divclass="hljslnlinehljslnn"datalinenumber="5"></div></div><divclass="hljslncode"><divclass="hljslnline"><spanclass="hljsbuiltin"><spanclass="hljsbuiltin">export</span></span>ORACLESID=orcl</div></div></li><li><divclass="hljslnnumbers"><divclass="hljslnlinehljslnn"datalinenumber="6"></div></div><divclass="hljslncode"><divclass="hljslnline"></div></div></li><li><divclass="hljslnnumbers"><divclass="hljslnlinehljslnn"datalinenumber="7"></div></div><divclass="hljslncode"><divclass="hljslnline"><spanclass="hljsbuiltin"><spanclass="hljsbuiltin">export</span></span>PATH=<spanclass="hljsvariable"><spanclass="hljsvariable">ORACLE_BASE</span></span>/oracle/product/11.2.0/dbhome_1</div>&