CentOS 6.6安裝Oralce 11gR2資料庫
環境要求:
rlwrap-0.42
CentOS release 6.6 (Final)
VMware Workstation 11
linux.x64_11gR2_database_1of2和linux.x64_11gR2_database_1of2
CentOS 6.6 正式版 下載
rlwrap的:http://utopia.knoware.nl/~hlub/uck/rlwrap/#rlwrap
CentOS release 6.6
選擇Basic Server其它沒有什麼特別要求:
VMware Workstation 11的安裝也沒有什麼特別要求
VMware Workstation 11.0 永久不到期啟用金鑰:
1F04Z-6D111-7Z029-AV0Q4-3AEH8
Oracle11gR2的:
http://download.oracle.com/otn/linux/oracle11g/R2/linux.x64_11gR2_database_1of2.zip
http://download.oracle.com/otn/linux/oracle11g/R2/linux.x64_11gR2_database_2of2.zip
CentOS 6.6 基本環境配置:
1) . ip地址配置
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.1.6
NETMASK=255.255.255.0
NETWORK=192.168.1.0
2) .主機名稱和網配置
# vi /etc/sysconfig/network
HOSTNAME=oracle.dba.No1
GATEWAY=192.168.1.254
3) .DNS配置
# vi /etc/resolv.conf
nameserver 192.168.1.254
4) .關閉selinux
# vi /etc/selinux/config
SELINUX=disabled
5) .配置ip和主機名稱的對應的關係
# vi /etc/hosts
192.168.1.6 oracle.dba.No1
The static table lookup for host name(主機名稱查詢靜態表)Linux 的/etc/hosts是配置ip地址和其對應主機名稱的檔案,這裡可以記錄原生或其他主機的ip及其對應主機名稱.
6) .關閉防火牆
# chkconfig --list iptables
iptables 0:關閉1:關閉2:啟用3:啟用4:啟用5:啟用6:關閉
# chkconfig --del iptables
7) .配置CentOS 6更新源
# vi /etc/yum.repos.d/CentOS-Base.repo
[aliyu]
name=from http://mirrors.aliyun.com/centos/6.6/os/x86_64/
baseurl=http://mirrors.aliyun.com/centos/6.6/os/x86_64/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
# yum clean all
# yum makecache
8) .安裝常用包
yum groupinstall 'Development tools' 'Compatibility libraries' 'Desktop Platform Development'
9) .配置使用xrdp或Xmanager 遠端連線 CentOS6
# yum install gdm 安裝gdm
# rpm -qi gdm 查看gdm的描述訊息
Name : gdm Relocations: (not relocatable)
Version : 2.30.4 Vendor: CentOS
Release : 64.el6 Build Date: 2014年10月16日 星期四 05時23分17秒
Install Date: 2015年01月05日 星期一 23時42分08秒 Build Host: c6b8.bsys.dev.centos.org
Group : User Interface/X Source RPM: gdm-2.30.4-64.el6.src.rpm
Size : 4828731 License: GPLv2+
Signature : RSA/SHA1, 2014年10月18日 星期六 04時01分31秒, Key ID 0946fca2c105b9de
Packager : CentOS BuildSystem
URL : http://download.gnome.org/sources/gdm
Summary : The GNOME Display Manager
Description :
GDM provides the graphical login screen, shown shortly after boot up,
log out, and when user-switching.
1)編輯/etc/gdm/custom.conf,內容如下:
[daemon]
[security]
AllowRemoteRoot=true
[xdmcp]
Port=177
Enable=1
[gui]
[greeter]
[chooser]
[debug]
[servers]
複製custom.conf到gdm.conf
>cp custom.conf gdm.conf
然後重啟案頭:gdm-restart
init 3
init 5
或重啟系統。
2)設定防火牆,在/etc/sysconfig/iptables檔案中加入:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 6000:6010 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 177 -j ACCEPT
重啟防火牆:service iptables restart
3)在windows中安裝Xmanager,開啟Xbrowser,建立XDMCP session,就可以看到CentOS了。
註:我出現了防火牆阻擋訪問的問題,使用service iptables stop關閉防火牆後即可訪問。或者用命令system-config-firewall來關閉防火牆。
至此主機環境配置完畢......................
oracle軟體所必需的環境配置:
1) .安裝依賴包
掛載光碟機從安裝光碟片上安裝所缺少的軟體外
# mkdir /mnt/cdrom
# mount -t iso9660 /dev/cdrom /mnt/cdrom
# cd /mnt/cdrom/Packages/
以 rpm -ivh 包名 的方式安裝所缺的軟體包
binutils-2.20.51.0.2-5.11.el6 (x86_64)
compat-libcap1-1.10-1 (x86_64)
compat-libstdc++-33-3.2.3-69.el6 (x86_64)
compat-libstdc++-33-3.2.3-69.el6.i686
gcc-4.4.4-13.el6 (x86_64)
gcc-c++-4.4.4-13.el6 (x86_64)
glibc-2.12-1.7.el6 (i686)
glibc-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6.i686
ksh
libgcc-4.4.4-13.el6 (i686)
libgcc-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6.i686
libstdc++-devel-4.4.4-13.el6 (x86_64)
libstdc++-devel-4.4.4-13.el6.i686
libaio-0.3.107-10.el6 (x86_64)
libaio-0.3.107-10.el6.i686
libaio-devel-0.3.107-10.el6 (x86_64)
libaio-devel-0.3.107-10.el6.i686
make-3.81-19.el6
sysstat-9.0.4-11.el6 (x86_64)
unixODBC-2.2.14-11.el6 (x86_64) or later
unixODBC-2.2.14-11.el6.i686 or later
unixODBC-devel-2.2.14-11.el6 (x86_64) or later
unixODBC-devel-2.2.14-11.el6.i686 or later
安裝依賴包出現錯誤的解決辦法:
安裝unixODBC的時候出現:
# rpm -ivh unixODBC-2.2.14-14.el6.i686.rpm
error: Failed dependencies:
libltdl.so.7 is needed by unixODBC-2.2.14-14.el6.i686
libreadline.so.6 is needed by unixODBC-2.2.14-14.el6.i686
解決辦法:
# rpm -ivh libtool-ltdl-2.2.6-15.5.el6.i686.rpm
# rpm -ivh ncurses-libs-5.7-3.20090208.el6.i686.rpm
# rpm -ivh readline-6.0-4.el6.i686.rpm
[root@oracle Packages]# rpm -ivh unixODBC-2.2.14-14.el6.i686.rpm
Preparing... ########################################### [100%]
1:unixODBC ########################################### [100%]
[root@oracle Packages]# rpm -ivh unixODBC-devel-2.2.14-14.el6.i686.rpm
Preparing... ########################################### [100%]
1:unixODBC-devel ########################################### [100%]
[root@oracle Packages]# rpm -ivh unixODBC-
unixODBC-2.2.14-14.el6.i686.rpm unixODBC-devel-2.2.14-14.el6.i686.rpm
unixODBC-2.2.14-14.el6.x86_64.rpm unixODBC-devel-2.2.14-14.el6.x86_64.rpm
[root@oracle Packages]# rpm -ivh unixODBC-2.2.14-14.el6.x86_64.rpm
Preparing... ########################################### [100%]
1:unixODBC ########################################### [100%]
[root@oracle Packages]# rpm -ivh unixODBC-devel-2.2.14-14.el6.x86_64.rpm
Preparing... ########################################### [100%]
1:unixODBC-devel ########################################### [100%]
2) . 建立oracle軟體所屬使用者和組
# groupadd oinstall
# groupadd dba
# useradd -g oinstall -G dba oracle
# id oracle
uid=500(oracle) gid=500(oinstall) 組=500(oinstall),501(dba)
3) .修改核心參數
# vi /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 = 1048576
# sysctl -p
4) . 上傳oracle軟體並解壓
#mkdir /oraapp
# unzip linux.x64_11gR2_database_1of2.zip && unzip linux.x64_11gR2_database_2of2.zip
# chown -R oracle:oinstall /oraapp/database/
# rm -rf /oraapp/linux.x64_11gR2_database_*
# du -sm database/ 查看解壓oracle軟體包後的大小
2367 database/
5) .修改Shell Limits 以便提高Oracle 的執行效率
# vi /etc/security/limits.conf
oracle soft nofile 131072
oracle hard nofile 131072
oracle soft nproc 131072
oracle hard nproc 131072
oracle soft core unlimited
oracle hard core unlimited
oracle soft memlock 50000000
oracle hard memlock 50000000
6) .建立oracle安裝目錄
# mkdir -p /u01/app/oracle
# chown -R oracle:oinstall /u01
# chmod -R 755 /u01
7) .修改oracle使用者環境變數
# su - oracle
$ vi .bash_profile
#my oracle set
export TMP=/tmp
export TMPDIR=$TMP
export EDITOR=vim
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2/db_1
export ORACLE_SID=secooler
export NLS_LANG=american_america.zhs16gbk
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:$PATH
export DISPLAY=192.168.1.7:0.0
umask 022
$ . .bash_profile
驗證oracle使用者環境變數是否設定成功
$ echo $ORACLE_HOME
/u01/app/oracle/product/11.2/db_1
$ echo $ORACLE_BASE
/u01/app/oracle
$ echo $ORACLE_SID
secooler
oracle11gR2安裝所需環境配置完畢...............
以下進行oracle11gR2圖形介面安裝:
1) .以root用運行命令xhost +
# xhost +
access control disabled, clients can connect from any host
# su - oracle
$ cd /oraapp/database/
$ ./runInstaller 如果不想讓oracle檢查先決條件的話, ./runInstall -ignoresysprereqs
2).oracle11gR2安裝的第一個介面
可以看到oracle11gR2圖形介面安裝一共需要經過12個步驟
這什麼都不選下一步
3) . 安裝選項 僅安裝資料庫軟體 在安成軟體安裝後再來建立資料庫和監聽
4).選擇資料庫安裝類型 單一實例資料庫安裝
5). 選擇語言 保持預設
6). 選擇資料庫版本 我這裡選擇企業版
7). 指定安裝位置 之前在oracle使用者的環境變數中定義了這幾個位置
8).建立產品清單 保持預設
9). oracle資料庫特權作業系統組 這兩個使用者我們已經建立保持預設
10).oracle安裝的先決條件檢查 這些i386的軟體包也可以忽略因為已經安裝了64位的包,如果不放心或看著難看,那就請掛載RedHat 5.8安裝光碟片這個光碟片裡面有這些所有的包
# umount /dev/cdrom
# mount /dev/cdrom /mnt
# cd /mnt/Server/
因為安裝了64的包,再次安裝i386的包會出錯,但使用rpm 的--force選項強制安裝即可
# rpm -ivh --force libaio-0.3.106-5.i386.rpm
# rpm -ivh --force compat-libstdc++-33-3.2.3-61.i386.rpm
# rpm -ivh --force libaio-devel-0.3.106-5.i386.rpm
# rpm -ivh --force libgcc-4.1.2-52.el5.i386.rpm
# rpm -ivh --force pdksh-5.2.14-37.el5.x86_64.rpm
# rpm -ivh --force unixODBC-libs-2.2.11-10.el5.i386.rpm
# rpm -ivh --force unixODBC-2.2.11-10.el5.i386.rpm
# rpm -ivh --force libstdc++-4.1.2-52.el5.i386.rpm
# rpm -ivh --force unixODBC-devel-2.2.11-10.el5.i386.rpm
11).概要
12).oracle安裝過程
13).oracle安裝過程中需要以root身份執行以下兩個指令碼,指令碼的內容當然也可以去查看
以oracle使用者的環境變數root的身份執行以上兩個指令碼
# su - oracle
$ su
密碼:
# echo $ORACLE_HOME
/u01/app/oracle/product/11.2/db_1
# cd $ORACLE_BASE/
# cd ../oraInventory/
# ./orainstRoot.sh
# cd $ORACLE_HOME
# ./root.sh
14). 最後一步
oracle軟體的圖形介面安裝到此 ok .............
安裝過程中出現錯誤的解決辦法
1). 運行./runInstaller出現以下錯誤的解決辦
# yum install xdpyinfo*
2).安裝介面出現以下亂碼
oracle安裝介面亂碼的解決辦法:安裝zysong.ttf字型
# mkdir -p /usr/share/fonts/zh_CN/TrueType
# wget http://pkgs.Fedoraproject.org/repo/pkgs/ttfonts-zh_CN/zysong.ttf.tar.bz2/0cab6ea4d57a6a7d84ee31afea047ec2/zysong.ttf.tar.bz2
# tar -xvf zysong.ttf.tar.bz2
zysong.ttf
rlwrap的安裝
# wget http://utopia.knoware.nl/~hlub/uck/rlwrap/rlwrap-0.42.tar.gz
# tar xvf rlwrap-0.42.tar.gz
# make && make install
最後在oracle使用者的.bashrc檔案中添加
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'
alias adrci='rlwrap adrci'
# source .bashrc
rlwrap安裝過程出現以下錯誤的解決辦法:
# yum install readline-devel
oracle軟體的安裝目錄
# su - oracle
$ cd $ORACLE_HOME
$ pwd
/u01/app/oracle/product/11.2/db_1
登陸:
這裡出現一個錯誤是因為我們只安裝了oracle軟體,但並沒有建立資料庫
使用dbca(Database Configuraion Assistant oracle資料庫配置助手)建立資料庫
以上我們只安裝了oracle軟體,現在使用dbca建立資料庫
# xhost + 注意這裡的使用者身份為root
access control disabled, clients can connect from any host
# su - oracle
$ dbca
Database configuration Assistant的第1個介面
Database configuration Assistant的第2個介面
選擇希望執行的操作:建立資料庫
Database configuration Assistant的第3個介面
設定oracle資料庫的全域資料庫名和oracle系統標識 符 ,這個SID就像linux系統使用者用唯一的uid,進程用pid唯一標識一樣.SID在系統中唯一的標識了資料庫 .因為我們在oracle使用者的環境變數中定義了資料庫的名字為secooler所以在這裡全域資料庫名也要使用
secooler
export ORACLE_SID=secooler
Database configuration Assistant的第4個介面
EM(Enterprise Manager)oracle企業管理器配置
Database configuration Assistant的第4個介面配置EM的時候出現一個錯誤,這個錯誤說監聽程式沒有配置 ,所以在安裝完資料庫軟體後,要先建立監聽程式
使用netca(Net Configuration Assistant oracle網路設定助手)配置監聽程式
$ netca &
注意目前使用者的身份
Configuration Assistant oracle的第1個介面
Configuration Assistant oracle的第2個介面
Configuration Assistant oracle的第3個介面
Configuration Assistant oracle的第4個介面
Configuration Assistant oracle的第5個介面
Configuration Assistant oracle的第6個介面
Configuration Assistant oracle的第7個介面
Configuration Assistant oracle的第8個介面
剛才資料庫並沒有配置成功,接下我們使用dbca從頭開始設定資料庫
$ dbca
Database configuration Assistant的第1個介面
Database configuration Assistant的第2個介面
Database configuration Assistant的第3個介面
Database configuration Assistant的第4個介面
因為我們在oracle使用者的環境變數中定義了資料庫的名字為secooler所以在這裡也全域資料庫名也要使用secooler oracle使用者.bash_profil中設定的sid :export ORACLE_SID=secooler
Database configuration Assistant的第5個介面
em配置可以發現在建立了監聽程式後再配置em就不在出錯了
Database configuration Assistant的第6個介面
為oracle內建賬戶設定密碼
Database configuration Assistant的第7個介面
Database configuration Assistant的第8個介面
Database configuration Assistant的第9個介面
Database configuration Assistant的第10個介面
第9個步驟中還需要設定字元集
Database configuration Assistant的第11個介面
第10個步驟中可以看到oracle資料庫中的3類檔案:控制檔案,資料檔案,重做記錄檔
$ cd $ORACLE_BASE/oradata/sccooler
$ ls -l
總用量 1599816
-rw-r----- 1 oracle oinstall 9748480 1月 6 17:52 control01.ctl
-rw-r----- 1 oracle oinstall 104865792 1月 6 17:33 example01.dbf
-rw-r----- 1 oracle oinstall 52429312 1月 6 17:52 redo01.log
-rw-r----- 1 oracle oinstall 52429312 1月 6 17:24 redo02.log
-rw-r----- 1 oracle oinstall 52429312 1月 6 17:28 redo03.log
-rw-r----- 1 oracle oinstall 534781952 1月 6 17:52 sysaux01.dbf
-rw-r----- 1 oracle oinstall 713039872 1月 6 17:52 system01.dbf
-rw-r----- 1 oracle oinstall 30416896 1月 6 17:30 temp01.dbf
-rw-r----- 1 oracle oinstall 110108672 1月 6 17:52 undotbs01.dbf
-rw-r----- 1 oracle oinstall 5251072 1月 6 17:33 users01.dbf
控制檔案以.ctl結尾
資料檔案以.dbf結尾
記錄檔以.log結尾
Database configuration Assistant的第12個介面
這裡可選產生資料庫建立指令碼----學習嘛
Database configuration Assistant的第13個介面
Database configuration Assistant的第14個介面
建立過程
建立過程中的提示
Database configuration Assistant的第15個介面
為以下這些oracle內建使用者佈建密碼,帶藍色小勾的使用者是被鎖定的使用者,sys和system使用者的密碼也可以不設定因為之前已經設定過了
至此oracle資料庫建立完成...................
查看em的連接埠
$ cat $ORACLE_HOME/install/portlist.ini
Enterprise Manager Console HTTP 連接埠 (secooler) = 1158
Enterprise Manager 代理連接埠 (secooler) = 3938
登陸測試,可以看到oracle的版本為:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production