debian 下 安裝 oracle 11g xe r2

最近兩天老是出門跑.在公司時間無法保證.因此想着在本身機器上面弄個oracle.方便到客戶那裏去處理一些問題. linux

固然就我這小破筆記本,直接裝上是在找死...因此虛擬機是很好的選擇. shell

操做系統方面,雖然oracle提供了windows x32 和 linux x64 版本的.可是虛擬機下面用windows 實在不是那麼回事.而我實在不喜歡ubuntu 的 unit界面 難用到要死.linux mint 卻是很好看.不過內存啊內存..因此果斷選擇Debian. ubuntu

首先第一件事情,固然是下載.. windows

debian 和 oracle 11g xe r2 我用的都是 最新版本的 centos

虛擬機安裝過程仍是很簡單... bash

可貴地方是在配置oracle 官方文檔居然只支持 oracle linux  redhat suse 而centos 和 debian 居然沒測... oracle

我弄了兩天,虛擬機鏡像恢復了不下10次.終於弄好了.不難,可貴是方法不對 編輯器

不得不吐槽某度.答案沒一個對的.要不就是10 g 的轉載帖..一點用沒有. ide

最終成功是參考 http://tech.danbarrese.com/2012/07/20/install-oracle-11g-in-linux-mint-11/ ui

這篇說的是在mint 上面安裝的方法.

好了閒話少說.立刻開始.

0.開始這篇教程,你須要基本的linux知識.好比su  sudo  都是什麼  swap 分區幹什麼用 命令怎麼打
   基本的命令行提示要能看懂.好比apt-get的時候的提示,要有能力處理....

1. 安裝虛擬機
    虛擬機正常安裝就能夠了.注意兩點.
     1.內存建議512以上.1g更好了.由於我機器內存小.因此沒辦法..
     2.cpu 核心數量.若是你的虛擬機只用來跑oracle的話  單核心就能夠了.由於xe版本不支持多核處理...
     3.別忘了裝驅動.要否則..........

2. 複製oracle_XXXXX.rpm.zip 到虛擬機,並解壓
    我放在了 用戶/文檔/下面了,他生成了一個Disk1的文件夾

3. swap分區的大小.
    Oracle官方文檔上面寫的swap分區最好2g.debian確定不到這個數字了.因此咱們應該擴充一下
    ps:其實不擴充也能裝成功.可是寧肯信其有不可信其無嘛O(∩_∩)O哈哈~

#在opt下面創建一個存放swap文件的文件夾
mkdir swap
# 進去
cd swap
# 創建一個2g的swap文件
dd if=/dev/zero of=swapfile bs=1024 count=2048000
# 等一會(時間比較長,我用了1分多鐘)...........

# 轉換激活swap
mkswap swapfile
swapon swapfile

# 看一下 swap分爲大小
free -m
# 單位是m 這個時候應該大於2G了..
# 最後一步 把他寫入/etc/fstab文件 開機2G
echo "swapfile swap swap defaults 0 0" >> /etc/fstab
4.安裝必備的庫

apt-get install alien dpkg-dev debhelper build-essential libaio1
PS:我這裏須要下載90m左右的文件.建議選擇163的源.比搜狐的新一些.也快一些.

5.新建一個鏈接和一個叫chkconfig的命令腳本//具體幹啥用我也不知道.猜想多是模仿redhat環境

ln -s /usr/bin/awk /bin/awk
cd /sbin
# gedit 是debian自帶的文本編輯器.其餘的也無所謂.(我以爲emacs可好用了XD)
gedit chkconfig
把下面的內容保存到chkconfig文件內

#!/bin/bash
# Oracle 11gR2 XE installer chkconfig hack for Debian
file=/etc/init.d/oracle-xe
if [[ ! `tail -n1 $file | grep INIT` ]]; then
   echo >> $file
   echo '### BEGIN INIT INFO' >> $file
   echo '# Provides:             OracleXE' >> $file
   echo '# Required-Start:       $remote_fs $syslog' >> $file
   echo '# Required-Stop:        $remote_fs $syslog' >> $file
   echo '# Default-Start:        2 3 4 5' >> $file
   echo '# Default-Stop:         0 1 6' >> $file
   echo '# Short-Description:    Oracle 11g Express Edition' >> $file
   echo '### END INIT INFO' >> $file
fi
update-rc.d oracle-xe defaults 80 01
6. 開始安裝oracle

# cd 到 oracle_XXX.rpm文件的地方

# 使用alien進行安裝
## 注意:由於這個過程須要執行它自帶的腳本.因此我是直接安裝的,並無轉換爲deb.
## 注意2: 參數i表示直接安裝 參數c表示把自帶的腳本文件一同轉換到deb.這個腳本文件很重要.沒有的話後面很難成功.

alien -ic oracle_XXXX.rpm
# 繼續 好久好久 好久

7.這個時候.命令行提示到/etc/oracle-xe 下面進行配置.咱們先不去
   注意.不要急急忙忙去config.
   
先執行下面兩個命令.功能我也不清楚(慚愧....)

sed -i 's;/var/lock/subsys/listener;/var/lock/listener;' /etc/init.d/oracle-xe
sed -i 's;/var/lock/subsys/oracle-xe;/var/lock/oracle-xe;' /etc/init.d/oracle-xe
8.這個時候就能夠config了.(也比較慢)
   注意有的人可能會卡在config設置8080端口的位置.緣由是sh命令類型不兼容形成的.應該使用bash.有的發行版好像不是bash 好比說mint 好像直接./執行會卡住.

有兩種解決思路.

第一種方法是 直接使用 bash /etc/init.d/oracle-xe config 指定bash執行腳本

第二種方法是 打開oracle-xe文件.在360行左右的地方 直接修改它代碼.找到那個端口的位置強制設置到8080 和1521 上面 break掉  具體方法.請google  oracle-xe 罕見  config

http://blog.csdn.net/liaocs2008/article/details/8648485

9.這個時候應該成功了..good luck


PS.不少人可能配置的時候配置錯了..結果不管怎麼卸載重裝.都沒法重現配置.其實從新配置很容易的...

找到 /etc/default 下面

你會發現有一個oracle-xe的文件

刪掉  你就能夠從新 configure 了.

這個文件卸載的時候不會自動清理掉.由於是configure的時候生成的嘛...

相關文章
相關標籤/搜索