數(shù)據(jù)庫系統(tǒng)入門 | Oracle Linux上部署Oracle 11g服務(wù),并實現(xiàn)SSH遠(yuǎn)程登錄管理

版權(quán)聲明:本文為北島向南(www.zhouie.cn)原創(chuàng)文章孟辑,未經(jīng)博主允許不得轉(zhuǎn)載哎甲。 https://blog.csdn.net/jave_f/article/details/88779915

寫在前面

貼上與這次安裝相關(guān)文件、安裝包的鏈接:

如遇鏈接失效饲嗽,Mail To nanzhouieATqq.com!

一炭玫、實驗內(nèi)容

  1. 安裝 virtualbox 虛擬機(我更喜歡的是VMware);
  2. 在虛擬機上安裝Oracle Linux貌虾;
  3. Oracle Linux上安裝Oracle 11g吞加;
  4. 配置虛擬機的網(wǎng)絡(luò),數(shù)據(jù)庫服務(wù)器的監(jiān)聽尽狠,TNS衔憨,使得可以遠(yuǎn)程訪問數(shù)據(jù)庫服務(wù)器。
  5. 采用遠(yuǎn)程登錄方式袄膏,使用ssh登錄數(shù)據(jù)庫服務(wù)器践图,進行數(shù)據(jù)庫實例管理。
  6. 采用遠(yuǎn)程訪問方式沉馆,使用 i*sqlplus或者第三方管理軟件登錄服務(wù)器码党,進行數(shù)據(jù)庫實例管理。
  7. 建立HR的模式(建議使用官方腳本)斥黑。

二揖盘、實驗前期準(zhǔn)備

1.軟件目錄

名稱 版本號
Vmware虛擬機 15.0.0-full-10134415-64bit
linux_11gR2_database_1of2 11.2.0.1.0 - 64bit
Putty.exe Release 0.70-64bit
Toad for oracle 12.8.0.49 -32bit
Oracle_11gR2_client 11g Release2 (11.2)-32bit
Oracle Linux文件(DOC-1002902.ova) Oracle Linux x64

2.準(zhǔn)備一些配置文件、腳本文件

  • 在Oracle服務(wù)器端建立HR(Human Resource)模式所需的腳本執(zhí)行文件锌奴;
  • Oracle客戶端配置TNS服務(wù)所需要的tnsname.ora兽狭、listener.ora文件。

ps:以上這些安裝缨叫、配置椭符、腳本文件在上面我分享的百度云鏈接文件中都能找到。

三耻姥、實驗方案(具體步驟)

(一)在虛擬機上安裝Oracle Linux

1.在虛擬機中導(dǎo)入老師提供的 DOC-1002902.ova文件销钝,由于實驗室32位PC機的原因,導(dǎo)入過程總是以失敗結(jié)束琐簇;因此改選64位PC機(配載VM虛擬機)來操作蒸健。

image


2.在VM虛擬機成功安裝Oracle linux(我的賬戶登錄密碼 oracle )座享,可以去設(shè)置語言、時區(qū)似忧、用戶名及密碼等渣叛。

(二)在Linux上安裝Oracle 11g R2(服務(wù)器端)

1. 前期準(zhǔn)備
1.1 硬件環(huán)境監(jiān)測
Content Instruction
檢查物理內(nèi)存 grep MemTotal /proc/meminfo
查看交換分區(qū) grep SwapTotal /proc/meminfo
查看當(dāng)前內(nèi)存使用情況 free

PS:這一類指令可以有很多,但其實只要在之前導(dǎo)入虛擬機文件過程沒有什么異常盯捌,不是很有必要去了解這些硬件環(huán)境信息淳衙,那么這一步可以跳過。

1.2 檢查各種補丁包饺著、函數(shù)依賴包
  • 方法:通過上網(wǎng)查找到需要的函數(shù)依賴包有以下這些:
    binutils-2.17.50.0.6
    compat-libstdc++-33-3.2.3
    compat-libstdc++-33-3.2.3 (32 bit)
    elfutils-libelf-0.125
    elfutils-libelf-devel-0.125
    gcc-4.1.2
    gcc-c++-4.1.2
    glibc-2.5-24
    glibc-2.5-24 (32 bit)
    glibc-common-2.5
    glibc-devel-2.5
    glibc-devel-2.5 (32 bit)
    glibc-headers-2.5
    ksh-20060214
    libaio-0.3.106
    libaio-0.3.106 (32 bit)
    libaio-devel-0.3.106
    libaio-devel-0.3.106 (32 bit)
    libgcc-4.1.2
    libgcc-4.1.2 (32 bit)
    libstdc++-4.1.2
    libstdc++-4.1.2 (32 bit)
    libstdc++-devel 4.1.2
    make-3.81
    sysstat-7.0.2
    
  • 通過類似重復(fù)以下的操作箫攀,借助root用戶終端 yum search/install 命令將這些未安裝的依賴包全部安裝到服務(wù)端。

    image
  • 然后幼衰,再使用yum快速安裝oracle預(yù)裝環(huán)境——yum install oracle-rdbms-server-11gR2-preinstall
1.3 修改用戶環(huán)境配置等參數(shù)文件
  • 通過vi .bash_profile命令進入編輯界面靴跛,點擊i進入insert模式,就可以寫入以下數(shù)據(jù)了渡嚣,寫完數(shù)據(jù)后梢睛,點擊ESC退出insert模式敲入:wq 保存本次修改并回到終端。
    #!/bin/bash
    ORACLE_BASE=/u01/app/oracle
    ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
    ORACLE_SID=prod             #這個位置填寫的是Service_name
    
  • 修改 /etc/hosts ,增加 ip地址主機名 的對應(yīng)關(guān)系识椰,按照和上面同樣的方法绝葡,添加下面這條:
    192.168.216.128  docker.oracleworld.com  #ip地址 hostname
    

注意:如果出現(xiàn) 其他IP地址hostname 的對應(yīng)關(guān)系,應(yīng)當(dāng)在前面加上#注釋掉或者直接刪掉裤唠。

  • 同樣的方法挤牛,通過終端vi mk_dir.sh 添入以下數(shù)據(jù)
    mkdir -p /u01/app/oraInventory
    chmod -R 775 /u01/app/oraInventory
    mkdir -p /u01/app/oracle
    mkdir /u01/app/oracle/cfgtoollogs
    chown -R oracle:oinstall  /u01
    chmod -R 775 /u01/app/oracle
    mkdir -p /u01/app/oracle/product/11.2.0/db_1
    chown -Roracle:oinstall/u01/app/oracle/product/11.2.0/db_1
    chmod -R 775 /u01/app/oracle/product/11.2.0/db_1
    
1.4 切換到Oracle用戶

去設(shè)置里面找到users,解鎖并修改已經(jīng)生成的oracle用戶密碼种蘸,再切換用戶登錄到oracle下墓赴。

2. 安裝Oracle 11g

在終端輸入命令:unzip oracle11g 11.2.0.4 兩個安裝文件(也可以手動合并到同一個文件夾下),進入安裝文件中的目錄database航瞭,運行命令: ./runInstaller


同時诫硕,如果由于環(huán)境配置的原因,發(fā)現(xiàn)隨后安裝界面出現(xiàn)亂碼刊侯,那么最好在執(zhí)行安裝之前添上這樣一條語句:export LANG=en_US_UTF-8章办。

在隨后出現(xiàn)的安裝界面中,依次選擇如下:

  • 注意:過程中可能省去了一些安裝界面(默認(rèn)Next即可)
  • 這里不填email等直接next滨彻,出現(xiàn)彈窗點擊Yes藕届;
  • 在接下來的界面中,依次選 install software only亭饵。
  • 選擇單實例類型的數(shù)據(jù)庫


  • 選擇oracle的語言休偶,選擇英文


  • 數(shù)據(jù)庫類型選擇企業(yè)版


  • 這里注意查看Oracle_Base路徑和Oracle_home路徑,必須保證和用戶的初始化參數(shù)文件一致
  • 設(shè)置 INVENTORY DIRECTORY
  • 檢查oracle用戶所屬的組
  • preinstall檢查階段辜羊,監(jiān)測oracle所依賴的軟件包踏兜,重新安裝缺失的軟件包词顾,如果仍然有錯誤,那么全部忽略即可
  • 最后一步監(jiān)測oracle的情況
  • 久違的安裝界面
    安裝到這個步驟碱妆,基本上問題不多了, copying files 階段時肉盹,root模式下開一個終端,進入安裝目錄下的sysman/lib疹尾,編輯ins_emagent.mk文件上忍。把 $(MK_EMAGENT_NMECTL)替換成$(MK_EMAGENT_NMECTL) -lnnz11

    同時這個過程中有可能會有一個提示對話框,然后按照指定路徑及說明方法運行兩個腳本纳本。
    打開終端睡雇,通過su – root切換到root用戶,再通過bash命令依次執(zhí)行對應(yīng)目錄的兩個腳本饮醇,然后再來這個彈窗界面點擊OK即可。

  • 隨后秕豫,就可以點擊next朴艰,出現(xiàn)如下界面,表示在虛擬機這邊安裝服務(wù)端的Oracle 11g就已經(jīng)成功了
3. 服務(wù)端NETCA創(chuàng)建配置監(jiān)聽程序
3.1 執(zhí)行netca指令

3.2 接下來的界面彈窗中直接默認(rèn)Next

在選擇TCP/IP端口號時混移,可能會出現(xiàn)一個彈窗提示:默認(rèn)的1521端口可能被占用祠墅。通過查找并沒有發(fā)現(xiàn)被占用問題,因此選擇Yes繼續(xù)歌径。



4. 建立一個數(shù)據(jù)庫實例DBCA建庫



4.1 設(shè)置數(shù)據(jù)庫名和SID
4.2 不啟用OEM
4.3 設(shè)置密碼
4.4 不需修改毁嗦、直接next
4.5 不啟用快速恢復(fù)區(qū)、不啟用歸檔
4.6 不需修改回铛、直接next




至此狗准,Oracle服務(wù)端實例數(shù)據(jù)庫創(chuàng)建完畢。

5. 服務(wù)端啟用ssh服務(wù)

(三)在主機上安裝Oracle 11g Client(客戶端)

檢查ssh服務(wù)是否正常

下載putty.exe茵肃,打開以后腔长,安裝下圖填入相對應(yīng)信息(虛擬機IP地址可以在網(wǎng)絡(luò)設(shè)置中找到,同時验残,建議虛擬機端網(wǎng)絡(luò)連接方式選擇僅主機模式)進行測試(確保虛擬機處于開啟狀態(tài))捞附。


(四)安裝Oracle客戶端并配置本地網(wǎng)絡(luò)服務(wù)監(jiān)聽

1. 點擊setup.exe啟動安裝
  • 安裝過程中,除修改安裝路徑外您没,其余直接默認(rèn)Next即可鸟召。


  • 選擇管理員選項


2. 配置前的一些準(zhǔn)備
  • 將之前準(zhǔn)備好的 listener.oratnsnames.ora文件(兩個文件里面的內(nèi)容如下所示)放到如下所示目錄下氨鹏。


  • 同時欧募,在環(huán)境變量中添加以下系統(tǒng)變量。


  • 在ssh服務(wù)控制終端執(zhí)行如下(開啟數(shù)據(jù)庫喻犁、開啟監(jiān)聽)



3. 本地網(wǎng)絡(luò)服務(wù)名配置

在所有程序中找到Net Configuration Assistant槽片,進入配置界面操作如下何缓。在測試連接過程中更改登錄如果忘了數(shù)據(jù)庫服務(wù)端密碼(以sys用戶為例),則需要重新給sys設(shè)置密碼(詳見后面的實驗問題及解決辦法)还栓。





(五)第三方軟件Toad for Oracle連接數(shù)據(jù)庫

1. TNS檢測

進入cmd測試如下碌廓,說明數(shù)據(jù)庫監(jiān)聽配置無誤

2. 使用Toad連接

打開Toad for Oracle中的toad.exe啟動,輸入數(shù)據(jù)庫服務(wù)端用戶名以及密碼后成功連接會出現(xiàn)如下的工作界面剩盒。


(六)建立HR的模式(服務(wù)器端進行)

1. 準(zhǔn)備腳本文件

在如下所示目錄中谷婆,將已準(zhǔn)備好的腳本文件粘貼過來


2. 執(zhí)行腳本文件

進入數(shù)據(jù)庫層面,按照下面流程執(zhí)行hr_main.sql這個腳本文件設(shè)置參數(shù)辽聊,就可以解鎖HR用戶并構(gòu)建HR模式纪挎,且數(shù)據(jù)表中都有初始樣例數(shù)據(jù)。

四跟匆、實驗出現(xiàn)的問題及解決辦法

  1. 第一次嘗試安裝時异袄,總是在Linking Text File出失敗,且界面卡死在那里玛臂。
  • 解決辦法:
    虛擬機重新啟動并通過恢復(fù)快照這一特性重新進行安裝烤蜕,主要在對那些依賴包的安裝過程要尤為注意,一個一個一次檢查確保已安裝迹冤,雖然方法很笨拙讽营,但至少不會出錯。
    同時泡徙,在Prerequisite Checks階段忽略所有錯誤繼續(xù)下一步橱鹏,隨后完成安裝。
  1. 整個過程中經(jīng)常會出現(xiàn)各種類型的錯誤,下面列出一些我遇到的這類問題
錯誤類型 錯誤原因 解決方案
ORA-12162 TNS:net service name is incorrectly specified 給出ORACLE_SID(可賦臨時值或是去host文件添加參數(shù))堪藐,重新嘗試登錄數(shù)據(jù)庫服務(wù)端
TNS-12545 Connect failed because target host or object does not exist 服務(wù)端root模式下修改host和listener.ora文件(即host文件里添上一條“IP地址 主機名”莉兰,listener文件里將host賦為修改后的主機名)
ORA-01078、LRM-00109 Failure in processing system parameters $ORACLE_BASE/admin/數(shù)據(jù)庫名稱/pfile目錄下的init.ora.\********形式的文件copy到$ORACLE_HOME/dbs目錄下 initoracle.ora即可
ORA-12514 TNS 監(jiān)聽程序當(dāng)前無法識別連接描述符中請求服務(wù) listener.ora中添加:(SID_DESC = (GLOBAL_DBNAME=全局?jǐn)?shù)據(jù)庫名) (ORACLE_HOME =依照相對應(yīng)的路徑來填) (SID_NAME = 數(shù)據(jù)庫服務(wù)名) )
ORA-12154 TNS無法解析指定的連接標(biāo)識符 重新進行配置網(wǎng)絡(luò)礁竞,在服務(wù)端查詢此數(shù)據(jù)庫服務(wù)下的服務(wù)名贮勃,并重新檢查配置,填寫相對應(yīng)虛擬機的IP地址苏章,對于賬號寂嘉、口令登陸的問題,需要去sysdba用戶下去設(shè)置枫绅。
  1. 用戶忘記了數(shù)據(jù)庫服務(wù)端的口令泉孩,導(dǎo)致在本地客戶端進行配置網(wǎng)絡(luò)服務(wù)時總是出現(xiàn)口令錯誤的提示
  • 解決辦法:按照下面的操作步驟進行,這樣使用修改后的用戶名和口令就可以測試成功了并淋。

    只能選擇用戶狀態(tài)是open的用戶進行重新設(shè)置口令的處理

參考文章

最后一點說明

這是我有史以來寫過的最長最長的一篇安裝配置教程了寓搬,大部分的內(nèi)容步驟都還是大三選修所記錄的實驗報告內(nèi)容。這段時間需要準(zhǔn)備數(shù)據(jù)庫知識的復(fù)習(xí)县耽,這才重新拾起來句喷,大體按照上面的步驟依次給重現(xiàn)了镣典。讓我意外的是,當(dāng)時竟然沒有po出一份安裝配置教程放網(wǎng)上唾琼。所以兄春,這次趕緊加了把勁,整理了這篇锡溯。

這里面有些地方可能比較混亂赶舆,一是因為圖片量太大了,可能會有一些偏差祭饭,還有就是我得承認(rèn)文中有用了幾張別的地方的圖片芜茵;二是因為這次的整個安裝配置過程相當(dāng)繁瑣,很多地方可能會出現(xiàn)報錯倡蝙、失敗等等九串,我還記得當(dāng)年選修這門課第一個實驗就是弄這個,當(dāng)時Linux指令等一些知識還不夠嫻熟寺鸥,好像前后花了三天時間才完事蒸辆。

最后,我想說的就是析既,教程寫的再完美,實際去操作的時候谆奥,每個人可能都難免會出現(xiàn)這樣那樣的問題眼坏,放在這篇來講,出現(xiàn)最多的就是形如 “ORA-××××××” 的類似問題酸些,出了問題并不可怕宰译,去某度和谷歌搜一下“ORA-××××××”,只要不是特別棘手魄懂,基本上都能解決沿侈。

貼張圖!J欣酢缀拭!


提神醒腦
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市填帽,隨后出現(xiàn)的幾起案子蛛淋,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,042評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異挣跋,居然都是意外死亡俭尖,警方通過查閱死者的電腦和手機萨醒,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評論 2 384
  • 文/潘曉璐 我一進店門筹吐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來学密,“玉大人爽航,你說我怎么就攤上這事其监∶韧龋” “怎么了?”我有些...
    開封第一講書人閱讀 156,674評論 0 345
  • 文/不壞的土叔 我叫張陵棠赛,是天一觀的道長哮奇。 經(jīng)常有香客問我,道長睛约,這世上最難降的妖魔是什么鼎俘? 我笑而不...
    開封第一講書人閱讀 56,340評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮辩涝,結(jié)果婚禮上贸伐,老公的妹妹穿的比我還像新娘。我一直安慰自己怔揩,他們只是感情好捉邢,可當(dāng)我...
    茶點故事閱讀 65,404評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著商膊,像睡著了一般伏伐。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上晕拆,一...
    開封第一講書人閱讀 49,749評論 1 289
  • 那天藐翎,我揣著相機與錄音,去河邊找鬼实幕。 笑死吝镣,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的昆庇。 我是一名探鬼主播末贾,決...
    沈念sama閱讀 38,902評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼整吆!你這毒婦竟也來了拱撵?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,662評論 0 266
  • 序言:老撾萬榮一對情侶失蹤表蝙,失蹤者是張志新(化名)和其女友劉穎裕膀,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體勇哗,經(jīng)...
    沈念sama閱讀 44,110評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡昼扛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片抄谐。...
    茶點故事閱讀 38,577評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡渺鹦,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出蛹含,到底是詐尸還是另有隱情毅厚,我是刑警寧澤,帶...
    沈念sama閱讀 34,258評論 4 328
  • 正文 年R本政府宣布浦箱,位于F島的核電站吸耿,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏酷窥。R本人自食惡果不足惜咽安,卻給世界環(huán)境...
    茶點故事閱讀 39,848評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望蓬推。 院中可真熱鬧妆棒,春花似錦、人聲如沸沸伏。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽毅糟。三九已至红选,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間姆另,已是汗流浹背喇肋。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留蜕青,地道東北人。 一個月前我還...
    沈念sama閱讀 46,271評論 2 360
  • 正文 我出身青樓糊渊,卻偏偏與公主長得像右核,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子渺绒,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,452評論 2 348