跳到主要內容

在 Mac 上利用 VirtualBox 安裝 CentOS 7 + Oracle Database 12c Express


前言

因為上課的需要,所以花了一點時間在研究怎麼安裝,前前後後花了幾天的時間再研究,原本要用 Ubuntu 來安裝,但是失敗好幾次再加上有些缺少的必備元件沒辦法裝上去,最後才發現原來有官方文件可以看,照著步驟做之後就順利安裝了。


系統環境

作業系統:Mac OS El Capitan

虛擬機器:VirtualBox

Linux 版本:CentOS 7 (minimal ISO)

資料庫:Oracle Database 12c

輔助工具:

FileZilla, XQuartz

1. 安裝虛擬機器

在 Mac 上安裝 VirtualBox,基本上就是按下一步一下就裝好了,之後先把 CentOS 7 下載下來,後來就可以按下建立新的虛擬機器,在名稱的地方輸入 CentOS ,他就會幫你選好是要用 RedHat 。

在這邊記得要將記憶體設定調高一點 (大概 1G Ram ),不然在安裝 Oracle Database 的時候會有問題。


另外一個很重要的地方,就是 Rom 要設定大一點,最好要 25 GB 以上。因為 Oracle Database 的檔案兩個加上去就超過 2G ,更不要說解壓縮或是安裝過程中的一些步驟。

容量太小會造成安裝失敗。


基本上安裝 CentOS 沒什麼太大的問題,就設定一下管理員密碼,並且開一組自己的帳號和密碼,安裝好就可以進行下個步驟了。


2. 設定遠端連線 SSH

之前花很多時間在設定,原先都是用 Ubuntu ,但是發現 CentOS 有些地方都不太一樣,所以又花一些時間在找資料。

登入後,請利用 root 權限來操作


[root@localhost]# su - root 


登入後,請先做 dhclient,向 DHCP 手動取得 IP



[root@localhost]# dhclient 


之後取得 IP 後,就可以查看自己的虛擬機器的 IP


[root@localhost]# ip addr



找出紅框中的 IP 位置,我這邊是 10.0.2.15 ,記起來後就要準備設定 VirtualBox 和 Mac 上的通道


在 VirtualBox 上,找到自己的虛擬機器,點擊右鍵來設定

之後選擇網路設定 選擇底下的 Port Forwarding,如果是中文版的話就選擇最底下的東西就對了。




進入到設定頁面後,基本上設定的跟我一樣,應該不會出什麼問題

Host IP:設定自己的 IP ,我這邊是設定 127.0.0.1 ,Port 是 2222

Gust IP :填入剛剛查到的 IP ,然後 Port 填上 22 (預設)



這邊步驟都正確的話,基本上應該就可以連線了。

如果沒辦法連線的話,查看一下自己的 CentOS 防火牆是否有打開,如果是開啟狀態,可以設定一下或是直接關閉也行。




[root@localhost]# service iptables stop



之後還要開啟 sftp 來傳檔案,所以要開啟 SSH 設定檔



[root@localhost]# vi /etc/ssh/sshd_config


找到下列這行,並把 # 移除,就可以了

Subsystem sftp /usr/local/libexec/sftp-server



最後,記得重新啟動 sshd 服務


[root@localhost]# service sshd restart


然後就可以試試看是否能用你的帳號來登入 ssh 和 sftp 囉





3. 下載 Oracle Database 與安裝

因為 Oracle Database 檔案實在是太大,而且也不能用 wget 來下載,因為還要自己的身份確認,實在是很擾人。

所以就要先在自己的電腦端下載好,然後透過剛剛設定好的 sftp 來傳檔,傳到自己的家目錄即可。

當檔案傳好之後,就可以開始進行正式安裝步驟囉!


請參照下列網址來進行安裝:

https://wiki.centos.org/HowTos/Oracle12onCentos7

如果你用遠端 ssh 連線,這些指令其實很好用複製的方式貼上,避免出錯。

如果要客製化的話,當然就是要用手動輸入的方式了。



其中的 firewall 設定的部分,如果自己要測試,其實可以略過。

另外一個比較重要的地方,就是下列指令後的步驟


[root@localhost]# yum groupinstall -y "X Window System"


因為安裝 Oracle Database 需要以圖形化介面來安裝,所以必須要用遠端連線的方式來進行安裝。

文章內提供兩種:

用 ssh -X 的方式來登入,在 Mac 上會需要用到 XQuartz


[root@localhost]# ssh -X oracle@127.0.0.1 -p 2222


或是用 Windows 桌面來使用 Putty 等進行連線,記得要以 oracle 的帳號來進行登入的動作


[root@localhost]# /stage/database/runInstaller


執行後他會進行一些基本的檢查,通過之後就會跳出圖形化視窗,然後就繼續按照剛剛的文件來進行安裝。

安裝到一半會需要你使用 root 權限登入,執行它指定的兩個 script 。完成後就能夠繼續安裝。


安裝過程中,如果有遇到錯誤,其實可以 ignore ,但是還是要檢查自己的硬碟空間、記憶體
夠不夠,這可是會影響最終安裝結果。


安裝成功後,可以在 Linux 上瀏覽下列網址:

https://localhost:5500/em

或是可以按照上面設定 port 的步驟,在自己的本機上設定一組

像是

Host IP: 127.0.0.1 
Host Port: 5500

Guest IP: 10.0.2.15
Guest IP: 5500

這樣我們也能夠在自己的電腦上瀏覽管理囉。


4. 最後設定

根據安裝文件的說明,按照 5.2 以及 5.3 的步驟來執行一些環境設定

如果設定都跟文件上的一樣,基本上就能夠登入 Oracle Database 了。

執行 sqlplus 前,記得先執行 .bash_profile ,這樣才會讓設定生效


[root@localhost]# . .bash_profile

[root@localhost]# sqlplus system@orcl


如果看到登入畫面,恭喜你,成功了!

試試看建立 table ,如果都沒問題,你就成功畢業囉!



問題提示

1. 如果出現無法正確登入 Oracle Database,請輸入


[root@localhost]# lsnrctl stop


之後再輸入


[root@localhost]# lsnrctl start


2. 進入 Oracle ,可以用下列步驟登入


[root@localhost]# sqlplus /nolog


SQLPLUS> connect / as sysdba 








留言

這個網誌中的熱門文章

逛夜市

逛夜市,人之常情。 夜市這個名詞,從我小學開始有記憶開始,我就對夜市這個充滿謎樣吸引力的市集感興趣。 自小生長在極為鄉下的苗栗縣,傳統的苗栗夜市,除了賣衣服之外,還是賣衣服。 尤其是大湖這邊的夜市,更是一年比一年爛。雖然說爛,但是夜市中還是充斥著許多自以為帥氣的國中生在這邊閒逛把妹。 而今天晚上,我和政經朋友們跑去羅東夜市逛一下,真不愧是傳說中的觀光景點的夜市,夜市上除了台客台妹之外,還多了許多外地來的正妹觀光客,但是機率很低就是了。 我們一路吃了又吃,逛了又逛,排了那種遊客一定會買的小吃攤,又逛了一些神奇的店,當然也是只看不買。 今天晚上,就吃了 蛋捲冰淇淋+羊肉捲+豆花+冰淇淋+大腸麵線+清心,這些東西吃下肚,明天午餐晚餐就只能吃便當來轉換一下了。 夜市中除了賣吃的,當然也少不了許多奇特的東西。 殘障老人在路中央賣口香糖。 打著平胸為招牌的平胸妹麵包。 以及各個都是歷史悠久的老店蚵仔煎、羊肉飯。 不過我真的受不了在夜市中騎腳踏車、騎摩托車、甚至是開車的那種神奇人類,真搞不懂為什麼要做出這種無理取鬧的事情!尤其是騎摩托車穿越人最多的那條小路,更是極限靠背。 總而言之,去夜市有人載,就是一個賺字。

台科大資管甲組面試心得

因為還是沒上,想說之前就要PO了,想說等「上榜了」再說,就算沒上榜還是得PO一下造福人群。 希望搜尋到此一BLOG的人,不管你是不是要去面試,面試之前總是該準備就緒的。 這次的臺科大資管甲組面試,第一階段當然就是繳交備審資料,通過之後就會被學校通知到學校面試。 建議要去面試之前的人要先去臺科大資管看看 師資陣容 臺科面試感覺都是依照個別問題然後給分的,因為我的是甲組,比較偏向資訊工程的,所以要很注意「資料結構」、C++、Java 等的程式概念,尤其是 物件導向中的三種 「封裝、繼承、多型」,尤其是 多型 中的 Class(類別)特別要注意一下,以免中箭落馬,大意失臺科。 臺科資管面試官給人的感覺就很親切,不會咄咄逼人,所以準備完備才是面試唯一要點。 第一關進去之後,當然就是先來個一分半鐘自我介紹,但是我好像自我介紹稿弄的太長了,所以沒有抓好時間介紹完整....就被迫中斷。 之後就開始問問題了,一開始先問說關於出國留學的事情,這個階段大概就比較偏向個人問答方面。 再來就是問到了: 1. 會不會 Java,會不會 C++ ,問個問題有關 Virtual 什麼的(真的忘了) 2. 果然讓我猜到會問多型中的類別,尤其是「抽象類別」的定義,還有抽象類別到底是做什麼的,請解釋。 3. 如果現在有一筆資料,要做「Search」不是做Sort,你會用哪種方式搜尋。還有該搜尋方式的時間複雜度。 4. 請問資料結構中的 Hashing 是什麼? 5. 你在班上的排名是? 第二關就緊接著來了.... 一進去當然也是自我介紹一番,然後就開始問問題囉。 1. 因為我資料庫成績蠻高分的,所以就被問資料庫相關問題,不過老師問了一個如果有一筆資料要分割成不同資料庫,這時候應該要做些什麼事情。 還有分割資料庫之後,會遇到什麼問題。 2. 也是問到 Class 的相關問題,不過我緊張到都忘記怎麼辦了,跟老師說我有準備可是忘記了,老師還笑笑的回應我。 3. 之後還問了有個空間長寬高都是 1,求天花板到地面的距離 => 根號三 好像還有一些問題,不過我也大概忘了差不多了。 臺科沒上就是因為自己準備不周全,還有對於程式設計中的物件導向中概念不清楚才會這樣,畢竟我比較熟悉的語言是 PHP,但是PHP似乎不是研究所的研究重點,當然就這樣悶悶的沒上榜。 最後給搜尋到此篇網誌的考生們,面試不要緊張,考前資料提...

好人難當

好人難當,尤其是讀資訊系,班上女生少又沒車,然後又要隨傳隨到的那種宅男最難當了。 昨天實在是衰爆了,早上因為要丟垃圾,想說在地下室抓取地下室門關上的緩衝時間,就這樣像白痴一樣的被急速關上的門給撞到手臂,還因為這樣手骨頭踵了起來。 一個字,悶。 下午想說沒課來補個眠,結果因為房間太悶,然後鼻子又有點塞住,所以就這樣睡不到五分鐘就作罷。沒睡著就算了,還要寫一堆有的沒的作業。 一個字,煩。 晚上又被班上女生問說有沒有空,說要去載同學,當然當下是非常之不想下山的,有誰還這麼有空為了載一個同學,然後寫假條衝下山又衝上山的,神經。 一個字,蠢。 還虧我放大絕招,就是採用移花接木,移型換影的絕技,說「XXX還在山下阿」;但,世事難預料,過了幾分鐘之後還是一樣被同學拜託說要下山,而且還是九點過後。 一個字,毀。 我又不是整天閒閒沒事就在等著載人,更何況時間就是金錢,而且天色已晚,晚上下山就是拿自己的性命開玩笑。九點過後還接到電話說大概可能要十點多才會到,心理一震驚孔,頓時傻眼,卻又無力反擊,無法說出「我不下去載了掰掰」這句狠話。 一個字,掰。 就這樣,寫好的假條時間改了又改,還一直在走廊上被同學喊著「Cooltey人很好喔,這麼晚還下山載妹」,但是我還是皮笑肉不笑,鬼才喜歡在十點多還要下山。其實本來預估說下山可以順便買個除濕劑之類的東西,所以這樣就心理安慰了點。 一個字,哈。 接到同學的電話,說已經下交流道了,我就這樣迅雷不及掩耳的速度衝往地下室。一路上空無一人,連天空的飛蟲都笑我是白痴,但我還是不以為意,就這樣發動引擎,準備下山。門口的警衛還叮嚀我「可以慢慢騎」,但是我一心只想快速完成任務,回房間洗澡睡覺。 一個字,快。 到了火車站前的 7-11 ,看著行李一大箱的同學,雖然心中幹聲無限,但是好人當然是不會把喜怒之情表現在臉上。更何況一個小小行李當然難不倒我這技術型車手,就這樣速度上山。 一個字,猛。 就這樣,一路上速度上山,配合上客套聊天,這也是好人的必備技能,我當然習慣了,不然怎麼渡過漫漫長日。就在到達礁溪球場時,我的車子突然沒力,車子就這樣熄火。我心中想「不會吧,有這麼衰嗎」。但是事實上就是這麼樣的剛好,車子拋錨了,離學校還有一大段距離。 雖然當下我說「不然怎麼辦,當然是走回去阿」,但是這個建議瞬間遭到回絕,還是要靠同學打電話給教官才可以解決這個棘手的問題。 心中幹聲無限,...