Oracle在Linux環境下的自動化部署項目實戰

oracle在Linux環境下的自動部署

思維導圖如下:
在這裏插入圖片描述

一、安裝說明

本文檔將完成 Linux 下面的 Oracle 數據庫的安裝。通過本次安裝將發現 Linux 系統發生如下變化:

  • 安裝了可以使用的 Oracle 數據庫;
  • 配置了可以使用的組和用戶;
  • 配置了相關權限的環境變量;
二、安裝前的準備

示例是基於虛擬機下的 Linux 系統的安裝工作,使用的本地操作系統是[Windows 10],使用的虛擬機是[VMware-workstation-12.exe]使用的 Linux 企業版是紅帽和Ubantu,使用的 Oracle 版本是[Oracle 10g]。安裝前請確認如下事宜:

  • 當前 Linxu 安裝了[開發工具]工具包;
  • 當前 Linux 系統已經配置好了網絡設置;
  • 已經準備好了 Oracle 安裝文件;
  • 有足夠的硬盤空間用於安裝; 有足夠的物理
  • 和分配內存便於安裝;

下面提供的是一組需要的資源參考:

  • 至少 1024 MB 物理內存
  • 1024-2048 需 1.5 倍的交互空間
  • 2048-8192 需 1 倍的交互空間
  • 8192- 需 0.75 倍的交互空間
  • 至少 400 MB /tmp 臨時目錄空間
  • oracle 軟件需要 1.5 GB 到3.5 GB 磁盤空間
  • 默認數據庫需要 1.2 GB
三、進行安裝前的配置

1、確定當前登錄的是超級管理員 root 用戶,如下內容都是在 root 下面進行的操作。
依 次執行命令:
[groupadd dba]----------------------------------------新建管理組
[groupadd oinstall]------------------------------------新建安裝組
[useradd -m tester -g oinstall -G dba]----------新建用戶,用戶錄屬於 dba 和 oinstall [passwd tester]------------------------------------------修改用戶密碼
具體操作如下圖所示: 在這裏插入圖片描述
2、繼續利用 root 用戶建立安裝目錄並分配權限。分別執行如下命令
[mkdir -p /oracle/product/10.2.0/db_1]-----------------------------------新建 oracle 安裝目錄 [chown -R tester.oinstall /oracle]---------修改 oracle 安裝目錄屬主和屬組
[chmod 755 -R /oracle]--------------------修改 oracle 安裝目錄操作權限
如下圖所示:
在這裏插入圖片描述
3、註銷當前 root 用戶(建議註銷,不用 su 命令置換),再用剛纔新建的 tester 用戶登錄系統。進入當前用戶的根目錄執行命令[vi ./.bash_profile],打開用戶環境變量列表,插入如下內容:

ORACLE_BASE=/oracle 
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1 
ORACLE_SID=orcl 
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin 
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export ORACLE_BASE  
export ORACLE_HOME  
export ORACLE_SID  
export PATH  
export LD_LIBRARY_PATH   

在這裏插入圖片描述
4、進入文件後,單擊[i],開始修改,修改完成後保存退出(ESC—冒號—wq),執行命 令[source ./.bash_profile],使修改生效,此時你可以利用命令[echo $ORACLE_BASE]或 [echo $PATH]命令查看剛纔的設置內容,如下圖所示:
在這裏插入圖片描述

5、shell自動化部署腳本代碼:
#!/bin/bash
#創建環境變量配置函數
editenv(){
  #進入tester的根目錄下
  cd /home/tester
  #向文件中插入內容
  sed -i "10aORACLE_BASE=/oracle" .profile
  sed -i `11aORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1` .profile
  sed -i "12aORACLE_SID=orcl" .profile
  sed -i `13aPATH=$PATH:$HOME/bin:$ORACLE_HOME/bin` .profile
  sed -i `14aLD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib` .profile
  sed -i "15aexport ORACLE_BASE" .profile
  sed -i "16aexport ORACLE_HOME" .profile
  sed -i "17aexport ORACLE_SID" .profile
  sed -i "18aexport PATH" .profile
  sed -i "19aexport LD_LIBRARY_PATH" .profile
  #更新文件內容
  source ./.profile
  #判斷
  if [ "$ORACLE_BASE" == "/oracle" ]
  then
    echo "環境變量配置成功"
  else
  echo "環境變量配置失敗"
  fi
}
#創建目錄的函數
createdir(){
  #創建目錄
  mydir="/oracle/product/10.2.0/db_1"
  mkdir -p $mydir
  #判斷
  if [ -d "$mydir" ]
  then
    echo "目錄創建成功"
    #修改屬主和屬組
    chown -R tester.oinstall /oracle
    #修改操作權限
    chmod 755 -R /oracle
    #調用環境變量配置函數editenv
    editenv
  else
    echo "目錄創建失敗"
  fi
}
#創建用戶的函數
createuser(){
   #創建用戶
   useradd -m tester -g oinstall -G dba
   #用戶創建成功後添加到/etc/passwd文件中
   finduser=`grep "tester" /etc/passwd|cut -d ":" -f 1`
   if [ "$finduser" == "tester" ]
   then
      echo "用戶創建成功"
      #修改密碼
      passwd tester
      echo "密碼修改成功"
      #調用創建目錄函數
      createdir
   else
      echo "用戶創建失敗"
   fi
 }
#創建管理組的函數
creategrp(){
   #創建管理組
   groupadd dba
   #在group文件中查找含義dba字符串,並截取其中的dba字符
   finddba=`grep "dba" /etc/group|cut -d ":" -f 1`
   #判斷
   if [ "$finddba" == "dba" ]
   then
      echo "管理組創建成功"
      #創建安裝組
      groupadd oinstall
      #查找組並定義變量
      findoin=`grep "oinstall" /etc/group|cut -d ":" -f 1`
      #判斷
      if [ "$findoin" == "oinstall" ]
      then
         echo "安裝組創建成功"
         #調用createuser函數
         createuser
      else
          echo "創建失敗"
      fi
   else
       echo "創建失敗"
      fi
}
#判斷當前用戶是否爲root --->$USER
if [ "$USER" == "root" ]
then
   echo "當前用戶是root"
   #調用創建組函數
   creategrp
else
   echo "當前用戶不是root"
fi
四、安裝 Oracle

1、 註銷系統,用 tester 用戶登錄系統(注意如果上一步沒有註銷,這一步一定要註銷, 要是你當前桌面顯示[tester 的主目錄]),找到 Oracle 安裝文件,比如我的是放在/tmp 下的 rar文件,所以首先解壓縮。
2、 解壓縮完成,會生成一個 database 的文件夾,進入 database 目錄下會看到一個可執 行文件 setup.exe,執行命令[./setup.exe],安裝開始。
3、 shell自動化部署腳本如下:

#!/bin/bash
#定義函數
install(){
  #進入tmp目錄下
  cd /tmp
  my_file="oracle10g.rar"
  if [ -f "$my_file" ]
  then
     echo "文件存在"
  else
     echo "文件不存在"
     echo "文件正在拷貝中...."
     cp /mnt/hgfs/唧唧下載視頻/$my_file /tmp
     echo "文件拷貝成功"
  fi
  #解壓
  echo "文件正在解壓中"
  #unrar x $my_file
  echo "文件解壓成功"
  #判斷解壓文件是否存在
  if [ -d "database" ]
  then
     echo "文件夾已經存在"
     #進入文件夾
     cd database
     #執行安裝文件
     ./setup.exe
  else
     echo "文件夾不存在"
  fi
}
if [ "$USER" == "tester" ]
then
  echo "當前用戶是tester"
  #調用install函數
  install
else
  echo "當前用戶不是tester"
fi

4、 安裝正式開始以後會彈出如下提示界面,有[基本安裝]和[高級安裝]兩項,[高級安 裝]中可以選擇[企業版]、[標準版]和[自定義]。默認的是[基本安裝],也就是[企業版],設置 都是上面用 root 賬戶創建的內容,可以默認不動,但是下面的數據庫口令一定要設定好並 且記牢,它是關鍵所在,這裏我們不是用[高級安裝],[下一步]繼續
在這裏插入圖片描述
5、 設定完密碼,單擊[下一步]繼續,這個地方的內容也是默認的,不用修改,[下一步] 繼續
在這裏插入圖片描述
6、 當[檢查]欄出現藍色突出顯示的提示時,選中當前的複選框即可,[下一步]繼續
在這裏插入圖片描述
7、 檢查通過以後進入正式安裝界面,單擊[安裝]
在這裏插入圖片描述
在這裏插入圖片描述
8、 安裝過程中如果出現如下圖提示,單擊[忽略]繼續:
在這裏插入圖片描述
9、 然後會出現如下圖繼續安裝界面:
在這裏插入圖片描述
10、 數據庫文件安裝好以後,進行配置組件時會出現下圖提示界面,作用是進行口令的 修改和管理
在這裏插入圖片描述
11、 單擊 [口令管理],出現下圖界面,可以根據需要作適當修改,這裏我們默認安裝
在這裏插入圖片描述
12、 單擊[確定]後繼續安裝,然後會彈出下圖所示界面,按提示進行操作
在這裏插入圖片描述
13、 下面是我切換到 root 後執行腳本的界面,其中出現一個選擇路徑的地方默認即可
在這裏插入圖片描述
14、 執行完腳本後,單擊[確定]出現如下提示,安裝完成,[退出]
在這裏插入圖片描述
15、 首先查看一下歡迎界面,輸入如下圖地址,如果正確顯示則表示安裝成功
在這裏插入圖片描述
16、 這個是進入數據庫操作界面
在這裏插入圖片描述
17、 這個是數據庫管理界面
在這裏插入圖片描述
18、 下面這幾個是 10g 企業管理界面
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
19、 如果你的機器都能正常顯示如上幾個界面的話。恭喜你 Oracle 安裝成功,但是使用前注意要啓動服務

五、設置服務啓動

雖然你現在可以啓用所有服務,但是當你重起系統以後,你會發現,所有的服務都不能 正常使用了,原因是你沒有設定系統啓動項,甚至沒有開啓服務,下面我們就來完成這些工 作。
1、 用 root 用戶修改文件[/etc/oratab],如下圖所示修改其中的 N 爲 Y,保存退出
在這裏插入圖片描述
2、 用 tester 用戶修改[$ORACLE_HOME/bin]下面的 dbstart 文件,如下圖所示
在這裏插入圖片描述
3、 修改好上面兩個文件後,我們利用命令[dbstart]啓動 oracle 服務,下圖是在不同位置 下的三種啓動方式,注意如果直接執行命令[dbstart]啓動一定要進入 oracle 家目錄的 bin 下
在這裏插入圖片描述
4 、 利用命令[emctl start dbconsole] 啓動oracle 的 em 服務,對應於 http://localhost:1158/em,利用命令[isqlplusctl start dbconsole]啓動isqlplus服務,對應於 http://localhost:5560/isqlplus和http://localhost:5560/isqlplus/dba
在這裏插入圖片描述
5、 如果你能再次看見下圖這個熟悉的管理登錄界面,恭喜你服務啓動成功:
在這裏插入圖片描述
在這裏插入圖片描述

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