Oracle - 11g安裝

小Q:最近因爲工作的變動,接觸了好多沒接觸的東西,一直在學習和熟悉業務,期間最有收穫的就屬於接觸了除mysql之外的數據庫,首先對oracle的安裝記錄一次。

建議:第一次安裝的朋友們,不要順着我的來,將安裝包上傳後,直接解壓執行./runInstaller,根據報錯去處理問題,這樣會更深入一層次的瞭解oracle。

oracle 和 mysql 區別

1、oracle屬於大型數據庫,而mysql屬於中小型數據庫,oracle市場佔有40%,mysql佔20%;

2、oracle非開源,需付費,提供售後,而mysql開源免費,不過被oracle收購後,不知道未來走勢;

3、oracle支持大併發,大訪問量,支持完全事務處理,而mysql在innodb引擎的行級鎖後才支持;

4、oracle是由用戶決定內容,mysql是由數據庫決定內容;

5、oracle邏輯備份時不鎖表,mysql需鎖表,而且一致性不如oracle;

6、oracle需要手動提交執行,mysql默認自動提交;

7、oracle安裝需3G左右空間,mysql只需150多M;

8、oracle三方管理工具較多,mysql很少

安裝 oracle 服務

1、檢查並安裝必要的軟件包

rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel make numactl-devel sysstat  unixODBC unixODBC-devel

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  ld-linux.so.2  unixODBC unixODBC-devel


yum install libXp  libXp.i686     //否則會報java Exception

wget http://mirror.centos.org/centos/5/os/x86_64/CentOS/pdksh-5.2.14-37.el5_8.1.x86_64.rpm

wget ftp://rpmfind.net/linux/opensuse/distribution/13.1/repo/oss/suse/i586/pdksh-5.2.14-948.1.2.i586.rpm   32位的

rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm --force --nodeps

2、檢查swap是否有16G

grep SwapTotal /proc/meminfo   //若小於16G,執行下面

dd if=/dev/zero of=/data/swap  bs=1G count=9

mkswap /data/swap  &&  swapon  /data/swap

vim /etc/fstab (add)

/data/swap  swap  swap defaults  0  0

mount -a

3、添加用戶和組

groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle   (oracleadmin)

4、配置內核參數

vim /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

kernel.shmall = 2097152                                 

//表示系統一次可以使用的共享內存總量(以頁爲單位)。缺省值就是2097152,通常不需要修改

kernel.shmmax = 2147483648                       

 //共享內存段的最大尺寸(字節)。缺省32M,對於oracle來說,該缺省值太低了,通常將其設置爲2G

kernel.shmmni = 4096                                   

 //用於設置系統範圍內共享內存段的最大數量。該參數的默認值是 4096 。通常不需要更改

kernel.sem = 250 32000 100 128   //表示設置的信號量

net.ipv4.ip_local_port_range = 1024 65000

net.core.rmem_default=4194304   //默認的接收窗口大小

net.core.rmem_max=4194304        //接收窗口的最大大小

net.core.wmem_default=262144     //默認的發送窗口大小

net.core.wmem_max=262144    


sysctl  -p   // 使之立即生效

5、修改用戶限制

vim /etc/security/limits.conf

oracle           soft    nproc   2047
oracle           hard    nproc   16384
oracle           soft    nofile  1024
oracle           hard    nofile  65536

6、修改用戶驗證選項

vim /etc/pam.d/login

session required /lib64/security/pam_limits.so
session required pam_limits.so

7、修改用戶配置文件

vim /etc/profile

if [ $USER = "oracle" ]; then
        if [ $SHELL = "/bin/ksh" ]; then
              ulimit -p 16384
              ulimit -n 65536
        else
              ulimit -u 16384 -n 65536
        fi
fi

8、修改用戶

vim  /home/oracle/.bash_profile

export ORACLE_BASE=/usr/local/oracle     #oracle數據庫安裝目錄
export ORACLE_HOME=$ORACLE_BASE/product    #oracle數據庫路徑
export ORACLE_SID=orcl #oracle      #啓動數據庫實例名
export ORACLE_TERM=xterm       #xterm窗口模式安裝
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH     #添加系統環境變量
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib    #添加系統環境變量
export LANG=C    #防止安裝過程出現亂碼

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

#設置Oracle客戶端字符集,必須與Oracle安裝時設置的字符集保持一致,

mkdir -p /usr/local/oracle/product

chown -R oracle:oinstall  /usr/local/oracle/

source /home/oracle/.bash_profile

注:雲機器默認無法用ctrl+alt+f7切換至圖形界面,而且無gnom桌面,所以爲了識別>256color,進行以下操作

yum groupinstall "X Window System"

##yum groupinstall "GNOME Desktop"     //我試了下,註釋部分不安裝也可,你也可以試試

yum install xdpyinfo xorg-x11-server-utils-7.7-14.el7  #tigervnc-server //不適用vnc可以不安裝服務

##(root)vncserver && 密碼=vncserveradmin  && export DISPLAY=localhost:1

##xhost +  //讓所有IP可以介入

9、oracle用戶登錄,並測試環境變量是否成功

su - oracle

env | grep ORA   //檢查環境變量是否設置生效

10、下載oracle,並安裝

linux.x64_11gR2_database_1of2.zip

linux.x64_11gR2_database_2of2.zip

解壓這倆安裝包,會出來個database目錄,進入該目錄

執行: ./runInstaller

11、若以xhell運行時,系統並配有xmanege程序,通過配置如下x11轉發(兩個11步,選一即可)

wKioL1jht3Dh1t9ZAAAnOs73J4A735.png

系統會自動識別並彈出圖形安裝界面,進行一系列安裝(不過最保險的是通過xmanager中的xbrowser啓動用戶終端,這樣只需要安裝好x11),如下 方式二vnc 服務安裝。

11、vnc的優勢流暢比xmanege快好多倍,以vnc方式安裝,我們需要用oracle用戶登錄終端,並開啓vncserver

su - oracle

開啓:vncserver :3  [vncserveradmin]    //開啓以3命名的 X

關閉:vncserver -kill :3

下載vnc viewer https://www.realvnc.com/download/file/viewer.files/VNC-Viewer-6.0.2-Windows-32bit.exe 

新建鏈接-->ip:會話號--->vnc密碼--->登錄密碼  登陸,進入 database目錄,並執行  ./runInstaller

12、下面的安裝方式 xmanege和vnc就一樣了,繼續下走。

spacer.gifwKiom1jhuCqz9HQzAACcOSpV-R8000.png

13.去掉勾,懶得填,個人使用環境不需要自動接收Oracle的安全更新。

 wKioL1jhuFSgCMP-AAM9pDI_U_M966.png

14.下一步,只安裝數據庫軟件,個人用不要那些玩意~~

15.選擇單例安裝,前面的所有配置均爲單例安裝。

wKioL1jhuI7wBv-sAAGcjKwRp-s512.png-wh_50

16、添加語言

wKiom1jhuJmTgTLpAAEsoKMlbbg968.png-wh_50

17、默認安裝版本企業版-Enterprise Edition 

wKiom1jhuKXBZUIlAACYARCeiTs642.png-wh_50

18、確定數據軟件的安裝路徑,自動讀取前面/home/oracle/.bash_profile 中配置的值。

wKioL1jhuLizLZfdAAGkwJnYf1E020.png-wh_50

wKiom1jhuLjAx8T5AAC0qV9LUTA379.png-wh_50

不知道作用是啥,就默認了,有時vnc報錯彈框特小,根本不知道報錯是什麼,所以我用的還是xmanege,雖然很慢,但報錯信息全。如下

wKioL1jhuMij32KTAAA0TypQ4_k037.png-wh_50

19、理論上要創建Database Operation(OSOPER)Group:oper ,個人用,懶得建,就使用dba用戶組

wKiom1jhuPeRKk6ZAAK_Xd83bN8675.png-wh_50

20、安裝檢查,按照提示信息一個一個解決。有些系統報錯是因爲現有的包的版本比檢測要高,最後忽略即可。(點擊Check_Again 多檢查幾次)

wKioL1jhuQPx5P_fAAFooj1J8E4326.png-wh_50

21、準備完畢,fuck “Finish”開始安裝。

wKioL1jhuRfx7sASAAhSVk8y2qA796.png-wh_50

wKiom1jhuRih0l4hAABV1nmZ8to513.png-wh_50

千萬不要以爲這樣就完成了,好多網上教程到這就完成了,安裝過程的錯也解決了,但是進入sysdba啓動數據庫就會

wKiom1jhwBLTFplMAAD388aZCJU421.png

就這樣耽誤了我好幾天的時間,一直重裝,去解決那不必要的錯誤,類似sem設置了oracle沒有識別到這種錯。。。

oracle不像mysql服務安裝好後,直接可以登錄,他需要單獨配置數據庫,讓sysdba有庫可登入。

另外爲了讓客戶端可以登入,我們還要設置一下監聽服務端口1521,一般安裝後默認就開啓了。

配置監聽服務 和 數據庫

1、執行netmgr  (配置你創建的監聽服務配置,監聽你創建的數據庫實例)

命令netca   (主要用來配置監聽和配置NET服務名,以便遠程連接數據庫。)

執行 dbca (創建數據庫、配置現有庫選項、刪除數據庫、管理模板=configretion assistant)

wKiom1jhvb3CdE0BAAE_qpXnG7Y857.png-wh_50

wKioL1jhvb6BaJyWAAKQ9XtyoOU490.png-wh_50

wKiom1jhvb6wUqEgAAJaL01Sm4A383.png-wh_50

wKiom1jhvb-BFE6qAAIJ4J7YIVY145.png-wh_50

2、設置現有的sid,默認是前面寫的,當然可以自己定義,只不過自定義之後還得手動改env

wKioL1jhvkKgedMOAAIWBknBzac294.png-wh_50

wKiom1jhvkPQVxnrAAKD0dUNR3o908.png-wh_50


3、可以爲每一個設一個密碼,也可以讓他們共用一個密碼,之後sys和system可以改的

wKiom1jhvlGDYcP3AAKkBMNSC_s610.png-wh_50


4、數據庫文件安裝的位置,,最好是 $ORACLE_BASE 下

wKiom1jhvmDwlUAbAALYjSvZhS0230.png-wh_50


5、選擇備份快速恢復的目錄

wKiom1jhvrnwUgspAAHxzgQpKjU007.png-wh_50

wKioL1jhvrnQtaYuAAHG2z8lNt4161.png-wh_50

wKiom1jhvrvRjBg2AAJpCSU1KpI229.png-wh_50

wKiom1jhvrvRqNKoAAGSHGZikFI957.png-wh_50

wKiom1jhvvyycyGDAAHxa8vbloQ548.png-wh_50

wKioL1jhvvzDPFv8AAFJYPGputM091.png-wh_50


6、chown oracle.oinstall /etc/oratab   //再點擊ok

wKiom1jhvxTirNTLAAC0HyzF74c687.png-wh_50

7、測試

sqlplus / as sysdba

SQL> create table z_test(id number,name varchar(20));

SQL> insert into z_test select 1,'a' from dual;

SQL> select * from z_test;

wKiom1jhwCiDb5rfAAAXZaZyEgI755.png-wh_50

附加測試:

lsnrctl stop        //停止監聽器
lsnrctl start          //啓動監聽器

sqlplus /nolog      //無密碼登陸
SQL> connect / as sysdba;     //選擇oracle數據庫
SQL> shutdown  immediate   //立即停止數據庫實例
SQL> startup             //啓動數據庫實例

==========================================================================



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章