摘要: 通過ssh遠端連接配接linux伺服器,上傳oracle11g的安裝包,在無圖形化界面的情況,安裝oracle伺服器端。本例中linux伺服器系統為centos6.5。
環境設定
一、檢查伺服器硬體資源 linux系統(x86-64)下的硬體要求:
實體記憶體:最少1gb
互動空間:實體記憶體為1gb至2gb之間時,互動空間為實體記憶體的1.5倍;實體記憶體為2gb至8gb之間時,互動空間為實體記憶體的1倍;實體記憶體為8gb以上時,互動空間為實體記憶體的0.75倍。
磁盤空間:企業版4.35gb;标準版3.22gb;自定義(最大值):3.45gb
二、檢查記憶體情況:
# grep memtotal /proc/meminfo
# grep swaptotal /proc/meminfo
1、為伺服器準備好oracle安裝包
下載下傳位址:oracle官方下載下傳位址
下載下傳linux x86-64版本,一共兩個.zip檔案。(oracle的下載下傳連結,點選之後會跳轉到登入界面,登入oracle賬号之後才可以下載下傳,是以不能把下載下傳連結複制到指令行中用wget指令下載下傳,那樣下載下傳下來的壓縮包是損壞的)
下載下傳好了連個壓縮包以後,我們使用scp遠端傳輸指令将檔案傳輸到伺服器端。(這裡需要你本機也是linux系統才可以實作,也可以将檔案拷入linux虛拟機,使用虛拟機發送過去。)
scp -p 8022 /home/oracle_linux_1.zip [email protected]:/home/oracle_linux_1.zip
具體指令如上所示,-p一定要大寫,8022即為ssh的端口第一個位址表示你本機的zip檔案位址,第二個位址表示你要放到伺服器的位置。
檔案傳輸到linux伺服器上以後,就要進入通過ssh指令進入linux伺服器的指令行進行操作了。(此處一定要用root使用者登入)
ssh -p 8022 root@ip
進入剛剛傳入.zip檔案的位置,使用unzip指令解壓兩個檔案
unzip oracle_linux_1.zip
unzip oracle_linux_2.zip
兩個壓縮包會解壓到同一個目錄下,解壓完後,生成一個新目錄/database,到這裡就把安裝包的準備工作做完了。
2.、安裝oracle伺服器端軟體的步驟
2.1、 安裝必要的依賴
直接将下面這句話複制到指令行中,包含了所有依賴
yum -y install binutils compat-libstdc++-33 compat-libstdc++-33.i686 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc.i686 glibc-common glibc-devel glibc-devel.i686 glibc-headers ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686 libstdc++-devel make sysstat unixodbc unixodbc-devel
2.2、添加oracle使用者資訊
#建立oinstall、dba組,将oracle使用者加入組,最後一步設定oracle使用者的密碼。
groupadd oinstall
groupadd dba
useradd -g oinstall -g dba oracle
passwd oracle
2.3、修改核心參數
lsnrctl start
dbstart $oracle_home
vi /etc/sysctl.conf
##在該配置檔案中修改以下參數,如果不存在的就是直接添加,如果預設值比參考值大的話,就不需要修改。
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
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 = 1048586
#編輯完後儲存,執行以下指令使其生效
ysctl -p
2.4、 修改使用者資源限制
##1、修改/etc/security/limits.conf配置檔案
vi /etc/security/limits.conf
##配置檔案的最下方加入以下參數
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
##儲存并退出
##2、修改/etc/pam.d/login配置檔案,
vi /etc/pam.d/login
##在配置檔案中加入
session required /lib/security/pam_limits.so
session required pam_limits.so
2.5、建立安裝目錄
建立安裝目錄/usr/local/oracle /usr/local/orainventory /usr/local/oradata,并賦予使用者組權限。
mkdir -p /usr/local/oracle /usr/local/orainventory /usr/local/oradata/
chown -r oracle:oinstall /usr/local/oracle /usr/local/orainventory /usr/local/oradata/
chmod -r 775 /usr/local/oracle /usr/local/orainventory /usr/local/oradata/
2.6、建立orainst.loc檔案
##建立/etc/orainst.loc檔案
vi /etc/orainst.loc
##檔案内加入以下内容
inventory_loc=/usr/local/orainventory
inst_group=oinstall
##儲存退出後執行以下指令。設定該檔案的使用者組及權限。
chown oracle:oinstall /etc/orainst.loc
chmod 664 /etc/orainst.loc
2.7、準備oracle安裝應答模闆檔案db_install.rsp檔案
## 1、該檔案預設存放在解壓後的安裝包内,也就是本例中/home/database/response下,
## 将oracle靜默安裝所需應答檔案全部拷貝至 /usr/local/oracle檔案夾下
cp /home/database/response/* /usr/local/oracle/
## 2、修改安裝所需的所有應答檔案的所屬組及權限
chown oracle:oinstall /usr/local/oracle*.rsp
chmod 755 /usr/local/oracle/*.rsp
## 3、配置db_install.rsp檔案
vi /usr/local/oracle/db_install.rsp
## 4、檔案内修改相應的參數配置如下:
oracle.install.option=install_db_swonly //安裝類型,隻裝資料庫軟體
oracle_hostname=serv2.lin.vm.ncu //主機名稱(在指令行輸入hostname查詢)
unix_group_name=oinstall // 安裝組
inventory_location=/usr/local/orainventory //inventory目錄(**不填就是預設值,本例此處需修改,因個人建立安裝目錄而定)
selected_languages=en,zh_cn // 選擇語言
oracle_home=/usr/local/oracle/product/11.2.0/db_1 // oracle_home *路徑根據目錄情況注意修改 本例安裝路徑/usr/local/oracle
oracle_base=/usr/local/oracle // oracle_base *注意修改
oracle.install.db.installedition=ee // oracle版本
oracle.install.db.iscustominstall=false //自定義安裝,否,使用預設元件
oracle.install.db.dba_group=dba //dba使用者組
oracle.install.db.oper_group=oinstall //oper使用者組
oracle.install.db.config.starterdb.type=general_purpose //資料庫類型
oracle.install.db.config.starterdb.globaldbname=orcl //globaldbname
oracle.install.db.config.starterdb.sid=orcl //sid(**此處注意與環境變量内配置sid一緻)
oracle.install.db.config.starterdb.memorylimit=81920 //自動管理記憶體的記憶體(m)
oracle.install.db.config.starterdb.password.all=oracle //設定所有資料庫使用者使用同一個密碼
security_updates_via_myoraclesupport=false //(手動寫了false)
decline_security_updates=true// **注意此參數 設定一定要為true
2.8、設定oracle使用者環境
## 由root切換至建立好的oracle使用者
su – oracle
## 修改該使用者的使用者配置檔案,該檔案就在~目錄下,可以先執行cd 或者cd ~
cd
vi .bash_profile
## 檔案内加入并修改至以下内容
export oracle_base=/usr/local/oracle
export oracle_home=$oracle_base/product/11.2.0/db_1
export oracle_sid=orcl
export oracle_owner=oracle
export path=$path:$oracle_home/bin:$home/bin
## 儲存退出後執行source指令立即生效。
source .bash_profile
2.9、在oracle使用者下開始安裝
## 執行指令。
/home/oracle/database/./runinstaller -silent -force -ignoreprereq -responsefile /usr/local/oracle/db_install.rsp
##參數說明
/home/database 是安裝包解壓後的路徑,此處根據安裝包解壓所在位置做修改,因人而異。
runinstaller 是主要安裝腳本
-silent 靜默模式
-force 強制安裝
-ignoreprereq忽略warning直接安裝。
-responsefile讀取安裝應答檔案。
2.10、運作腳本
執行完安裝指令後,在原來那個視窗(1号視窗)可以什麼事情都不做,重開一個指令行視窗(2号視窗),以root身份登入到伺服器。
在2号視窗進入/usr/local/oracle/product/11.2.0/db_1目錄,可以看到安裝資料庫已經裝在這個目錄下了,并且有一個root.sh檔案在這個目錄下。
這個時候等1号視窗出現以下提示,安裝編譯需要一定的時間,請耐心等待。
#-------------------------------------------------------------------
/usr/oracle/orainventory/orainstroot.sh(這一句可能沒有。。具體原因我也不清楚,不影響安裝,如果有這一句,也要運作這個orainstroot.sh腳本)
/usr/oracle/product/11.2.0/db_1/root.sh
to execute the configuration scripts:
1. open a terminal window
2. log in as "root"
3. run the scripts
4. return to this window and hit"enter" key to continue
successfully setup software.
#------------------
出現以上界面後,到2号視窗運作root.sh腳本
./root.sh
資料庫安裝過程到這裡結束,下面是配置。
3. 資料庫的配置和建立
3.1 建立資料庫
這裡切換成
進入/usr/local/oracle目錄,編輯dbca.rsp建立資料庫應答檔案:
vi dbca.rsp
修改幾個參數,如果這幾個參數被注釋了,要取消注釋(這個檔案一定要修改,否則會造成資料庫建立後無法挂載)
gdbname = “orcl”
sid = “orcl”
characterset = “zhs16gbk”
nationalcharacterset= “al16utf16”
sourcedb = “serv2.lin.vm.ncu:1521:orcl”
儲存退出後,執行dbca指令建立資料庫:
dbca -silent -responsefile dbca.rsp
出現以下界面
copying database files
1% complete
3% complete
11% complete
18% complete
26% complete
37% complete
creating and starting oracle instance
40% complete
…………………………
執行到100%後,資料庫建立完成
3.2 開啟資料庫網絡監聽
還在剛才的目錄下,有一個netca.rsp檔案,執行以下指令
netca -silent -responsefile netca.rsp
開啟監聽
dbstart $oracle_home
--後記--
詳細的安裝步驟是同在實驗室的傅老大同學根據安裝過程總結出來的。對于其中遇到的一些報錯問題有詳細的解決方案。感謝傅老大~!
經過進一步的了解對比,對于這種 linux 伺服器上的db服務,直接使用docker鏡像啟動會更簡單一些,不用每次安裝那麼麻煩。
不過,針對docker容器引擎還需要進一步深入研究。這是下一步的學習目标。
本文作者:佚名
來源:51cto