程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> linux下安裝單機版oracle11gR2

linux下安裝單機版oracle11gR2

編輯:Oracle教程

一、建立群組與用戶

linux中打開終端terminal,root用戶登錄,輸入命令:

groupadd dba                                    // 添加dba組

useradd -g dba -m oracle                        // 添加用戶名為oracle,並將該用戶加入dba群組

passwd  oracle                                  // 為oracle用戶設置密碼,我設置的密碼為oracle 
二、創建必要的安裝目錄及設置變量

(1)、使用root用戶創建如下路徑:

# mkdir –p /home/oracle                        //oracle安裝基本目錄(ORACLE_BASE)

# mkdir –p /home/oracle/product/11.2.0/db_1    //ORACLE_HOME目錄

# mkdir –p /home/oracle/oradata                //oracle實例安裝目錄

# mkdir –p /home/oracle/oraInventory           //
說明:-p參數的作用是級聯建立目錄,父目錄不存在則依次建立。
(2)、修改目錄所有者 
# chown –R oracle:dba /home/oracle             // 將/home/oracle目錄及其下所有子目錄改為oracle用戶,dba組所擁有,-R表示級聯操作,即包含其下所有子目錄。
(3)、修改操作權限
#chmod –R 775 /home/oracle                     // 修改/home/oracle目錄及其所有子目錄的操作權限為775(rwx[u,user]rwx[g,group]r-x[o,other])
u 表示“用戶(user)”,即文件或目錄的所有者。
g 表示“同組(group)用戶”,即和文件屬主有相同組ID的所有用戶。
o 表示“其他(others)用戶”。
a 表示“所有(all)用戶”。他是系統默認值。
(4)、添加環境變量

1)、root用戶登錄後,切換到oracle用戶下:

su oracle
2)、新建配置文件:
-bash-4.1$ vim /home/oracle/.bash_profile     // 或者使用vi命令

3)、添加如下配置:

export ORACLE_BASE=/home/oracle               

export ORACLE_HOME=/home/oracle/product/11.2.0/db_1

export ORACLE_SID=orcl                       // 數據庫的sid

export ORACLE_OWENER=oracle

export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin

export PATH=$ORACLE_HOME/bin:$PATH

CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib

export CLASSPATH
注意:(1、ORACLE_SID為操作系統的環境變量,用於和數據庫實例名對應,操作系統要得到實例名(instance_name,是數據庫參數)必須通過操做系統環境變量oracle_sid,oracle_sid與instance_name必須相同,否則報錯(在unix平台,是“ORACLE not available”,在winnt平台,是“TNS:協議適配器錯誤”)。

(2、數據庫實例名(instance_name):用於和操作系統之間的聯系,操作系統與數據庫之間的交互則必須使用數據庫實例名;數據庫實例名稱存儲在參數文件中。

查詢當前數據庫實例名:

方法一:select instance_name from v$instance;
方法二:show parameter instance
(3、數據庫名(db_name):是oracle內部管理數據的標記。

作用:數據庫名是數據庫的內部管理標記,在安裝數據庫、創建新的的數據庫、創建數據庫控制文件、修改數據庫結構、使用數據庫備份與恢復工具進行數據庫備份時都需要使用數據名。

查詢數據庫名:

方式一:select name from v$database

方式二:SQL>show parameter db_name
(4、數據庫域名(db_domain):在數據庫名稱後增加域名構成,使得數據庫的取名在整個網絡環境中惟一,主要用於oralce分布式環境中數據的遠程復制

作用::1、在oracle分布式環境下,兩個數據庫之間要通過數據鏈路進行數據的遠程傳輸。2、在同一網絡環境下,兩個數據庫名相同。

查詢域名:

方式一、select value from v$parameter where name='db_domain'

方式二、SQL>show parameter db_domain
(5、數據庫服務名service_names:數據庫名+數據庫域名,意義與全局數據庫名相同。

查詢數據庫服務名:
方式一、select value from v$parameter where name='service_names'

方式二、SQL>show parameter service_names
(6、全局數據庫名global_db_name:數據庫名+數據庫域名。

關於vi的簡單命令說明:輸入vim /home/oracle/.bash_profile 新建配置文件後,需要按下i(進入insert模式)鍵,才能添加、修改。

修改完畢後,按ESC後,按下shift+:,輸入wq,即可保存並退出。

另外,若是直接將上面若干變量從windows系統的文件中拷貝復制到linux配置文件中,需使用vi命令打開,檢查每行最後有無特殊字符,有則刪掉,否則環境變量不會生效。

4)、使環境變量生效:

輸入以下命令,或者重啟服務器:

-bash-4.1$ source $HOME/.bash_profile
三、安裝oracle 11g R2

1、解壓縮oracle安裝包(linux.x64_11gR2_database_1of2.zip、linux.x64_11gR2_database_2of2.zip):

unzip linux.x64_11gR2_database_1of2.zip

unzip linux.x64_11gR2_database_2of2.zip
成功後,在當前目錄會生成database目錄,我的解壓後目錄為 cd /home/OracleInstaller/database

修改該目錄的操作權限,以防出現問題:
#chmod –R -777 /home/OracleInstall
2、以oracle用戶進入安裝包目錄,執行安裝命令:
-bash-4.1$ su oracle

-bash-4.1$ cd /home/OracleInstaller/database

-bash-4.1$ ./runInstaller
即可進入oracle 11g數據庫安裝歡迎界面。

注意:(1)、若是使用非root用戶(或者遠程)安裝,則需用root登錄執行命令行中xhost +命令才能成功調出圖形界面。
 # xhost +              // 按回車鍵如果出現如下信息,則表示設置成功
 Access control disabled, clients can connect from any host // 表示禁用訪問控制,用戶從任何主機都能訪問

(2)、安裝過程中,若是中文安裝包出現亂碼,則需設置 :
-bash-4.1$ export LANG=zh_CN.gbk
若是英文安裝包,出現亂碼,則設置:
-bash-4.1$ export LANG=en_US
-bash-4.1$ export LC_ALL=en_US
(3)、若是安裝前校驗提示:must be configured to display at least 256 colors Failed,則設置命令如下:
-bash-4.1$ export DISPLAY=:0.0       // 在本機上安裝是這樣,若是在其他終端上則需改為 export DISPLAY=ip:0.0,前面是因為本機的127.0.0.1省略了。

3、執行圖形界面安裝步驟:

步驟一:不勾選復選框,不填寫電子郵件,直接下一步,無視彈出的警告框(未提供電子郵件警告)

\

彈出警告如下:

 

\

步驟二:選擇安裝類型(創建並配置一個數據庫,還是僅僅安裝數據庫軟件,還是更新一個一存在的數據庫,這裡選擇第二項),如下:

\

步驟三:選擇安裝單機版數據庫實例,還是安裝集群數據庫,這裡選擇單機,第一個

\

步驟四:選擇安裝語言,這裡選擇簡單中文,在左邊選擇框裡選擇,然後添加到右邊一欄裡,並選中,點擊下一步

\

步驟五:選擇安裝企業版、標准版、還是標准版1,這裡選擇企業版

\

步驟六:選擇ORACLE的基本路徑,以及數據庫軟件的安裝位置,和一開始配置的環境變量要對應;即要先設置環境變量,否則會報錯。

\

這裡,彈出警告框,警告oracle的基路徑安裝在了home下, 點擊yes,繼續安裝。

\

步驟七:為oracle的安裝文件指定一個目錄(首次安裝時),名稱為oraInventory,大約占150K空間:

\

步驟八:選擇先前建立的dba組,並繼續

\

步驟九:執行安裝前的校驗:

\

校驗結果如下:選擇Ignore All,忽略不滿足的條件,並繼續:

\

上步點擊繼續後,進入安裝界面,大約需要20分鐘。

安裝完成後,系統會提示需要用root權限執行2個shell腳本。本例在/home/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh和 /home/oracle/app/oraInventory/orainstRoot.sh

新開啟一個終端,輸入命令:

 

su  root               // 需輸入密碼
cd  /home/oracle/app/oracle/product/11.2.0/db_1
sh  root.sh
cd /home/oracle/app/oraInventory
sh  orainstRoot.sh


四、監聽安裝

 

使用以下命令,進入圖形化界面安裝:

 

su oracle

-bash-4.1$ cd /home/oracle/product/11.2.0/db_1/bin

-bash-4.1$ ./netca

 

如下圖:選擇配置監聽器

 

\


選擇新增監聽器:

\

輸入監聽器名稱,默認即可:

\

選擇協議,TCP默認即可。

\

填寫監聽端口,默認1521即可:

\

選擇no,不再新增另一個監聽器:

\

監聽配置完成:

\

點擊FINISH,完成安裝監聽器。

\

另外,某些情況下可能需要對本機裝的oracle數據庫配置本地網路服務名,見http://www.cnblogs.com/zhangyongli2011/archive/2012/04/04/2431953.html

五、數據庫實例安裝:

使用以下命令進入圖形界面安裝:

 

su oracle
cd /home/oracle/product/11.2/db_1/bin
$ ./dbca

 

初始界面:

\

點擊下一步:


\

步驟一:創建一個數據庫,選擇第一項

\

步驟二:選擇第一個即可,用於普通的事務處理

\

步驟三:輸入數據庫名稱和數據庫SID,這裡數據庫名稱為orcl,sid為先前配置環境變量的sunlight(注意圖上有點不符)

\

步驟四:如圖配置即可,可根據自己需要進行設置自動每日備份等。

\

步驟五:設置數據用戶的密碼

\

提示密碼簡單,無視,繼續:

\

步驟六:設置存儲數據文件的位置,如圖配置:

\

步驟七:是否指定閃回區域,及是否設置歸檔,本例均不設置

\

步驟八:如圖:

\

步驟九:內存百分比保持在40%左右,選擇自動內存管理,

\

在字符集一欄裡選擇ZHS16GBK

\

步驟十:下一步

\

控制文件的位置:

\

數據文件的位置:

\

步驟十一:選擇創建數據庫,另一個為保存為數據庫模板,最下面為是否生成數據庫創建腳本。

\

數據庫創建細節:ok即可

\

最後,安裝完成,提示備份一下/home/..../db_1/sunlight35_orcl_sysman_config/emket.ora這個文件,備份到/home/oracle即可。

也可選擇密碼管理,進行oracle其他用戶的禁用或者解除禁用,及設置密碼。

\

檢驗、創建dba用戶、查看用戶表空間:

使用sqlplus檢驗:若是命令行裡不提示該命令,則需要source /home/oracle/.bash_profile

$ sqlplus sys/vehicle@orcl as sysdba;

創建ITS用戶,賦予dba權限,兩句命令

create user ITS identified by vehicle;
grant dba to ITS; 

查看新建用戶ITS的表空間

$ sqlplus ITS/vehicle@orcl
sql> select username, default_tablespace from user_users;

over!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved