標籤:
來自: http://blog.csdn.net/cafardhaibin/article/details/25071249
1準備
CentOS-6.5-x86_64-bin-DVD1
linux_11gR2_database_1of2
linux_11gR2_database_2of2
VMware Workstation 10.0.2
SSH Secure Shell Client
instantclient_11_2
plsqldev1005
2安裝虛擬機器及CentOS
(1)安裝VMware Workstation
(2)安裝CentOS,主機命名為:oracledb
(3)磁碟需要大於30G(經驗值)
(4)記憶體必須大於1G(官方要求)
(5)作業系統swap分區大於2G(如果實體記憶體小於2G,則需要設定,設定值為實體記憶體的1-2倍,如果實體記憶體大於2G,則無需設定。)
(6)虛擬機器網路連接方式:橋接模式(B)直接連接物理網路
(7)安裝完成後設定虛擬機器網路(ipv4)為固定IP地址(system-config-network)
(8)進行網路測試OK,則作業系統環境準備完畢
(9)安裝虛擬機器時一定要選擇:先建立虛擬機器後安裝作業系統
(10)為了安裝Oracle,故選擇安裝類型為:案頭版本。
(11)安裝SSH Secure Shell Client並串連主機
3Oracle安裝前準備
『特殊說明』:
(1)以下步驟中的命令太長的可通過:SSH Secure Shell Client 直接複製進行
(2)vi基本命令:i--編輯狀態 退出編輯並儲存時先按ESC鍵,再按符合“:wq”或者":x"即可
(3)注意每個步驟時的目前使用者,是root還是oracle
step-1#修改主機名稱
[[email protected] ~]# sed -i "s/HOSTNAME=localhost.localdomain/HOSTNAME=oracledb/" /etc/sysconfig/network
[[email protected] ~]# hostname oracledb
step-2#添加主機名稱與IP對應記錄
[[email protected] ~]# vi /etc/hosts
192.168.1.8 oracledb
step-3#關閉防火牆Selinux
[[email protected] ~]# sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
[[email protected] ~]# setenforce 0
step-4#安裝依賴包
1 檢查依賴包
[[email protected] ~]rpm -q --qf ‘%{NAME}-%{VERSION}-%{RELEASE}(%{ARCH})\n‘ binutils \
elfutils-libelf \
elfutils-libelf-devel \
gcc \
gcc-c++ \
glibc \
glibc-common \
glibc-devel \
glibc-headers \
ksh \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
make \
sysstat \
unixODBC \
unixODBC-devel
2網路OK時通過yum安裝
[[email protected] ~]#
yum -y install gcc gcc-c++ make binutils compat-libstdc++-33 elfutils-libelf \
elfutils-libelf-devel glibc glibc-common glibc-devel \
libaio libaio-devel libgcc libstdc++ libstdc++-devel \
unixODBC unixODBC-devel
3網路不OK時,在系統光碟片中找到rpm包,通過rpm安裝
[[email protected] ~]rpm -ivh gcc.rpm
『特殊說明』:
(1)pdksh-5.2.14-37.el5.x86_64.rpm :此安裝包yum源中沒有,但必須,可通過其他方式下載後手工安裝;
(2)雖然安裝了依賴包,在安裝oracle過程時依然會校正出未安裝以上某個包,則需要通過:rpm -qa gcc(校正未通過的包名) 一個個都檢查核實。
(3)pdksh,已經成一個老包了,用ksh就可以,安裝時會校正,但忽略就可以。
step-5#修改核心參數
[[email protected] ~]# vi/etc/sysctl.conf #末尾添加如下
[plain] view plain copy
- net.ipv4.ip_local_port_range= 9000 65500
-
- fs.aio-max-nr = 1048576
- fs.file-max = 6815744
-
- kernel.shmall = 10523004
- kernel.shmmax = 6465333657
- kernel.shmmni = 4096
- kernel.sem = 250 32000 100 128
-
- net.core.rmem_default=262144
- net.core.wmem_default=262144
- net.core.rmem_max=4194304
- net.core.wmem_max=1048576
[[email protected] ~]# sysctl -p (備忘:用於輸出配置後的結果,如果有錯誤會提示)
step-6#修改系統資源限制(開啟進程數和檔案數)
[[email protected] ~]# vi/etc/security/limits.conf #末尾添加如下
[plain] view plain copy
- oracle soft nproc 2047
- oracle hard nproc 16384
- oracle soft nofile 1024
- oracle hard nofile 65536
-
- grid soft nproc 2047
- grid hard nproc 16384
- grid soft nofile 1024
- grid hard nofile 65536
[[email protected] ~]# vi /etc/pam.d/login
session required pam_namespace.so #下面添加一條pam_limits.so
session required /lib64/security/pam_limits.so
session required /lib/security/pam_limits.so
session required pam_limits.so
step-7#建立使用者和組
[[email protected] ~]# groupadd oinstall
[[email protected] ~]# groupadd dba
[[email protected] ~]# groupadd oper
[[email protected] ~]# useradd -u600 -g oinstall oracle
[[email protected] ~]# usermod -G dba,oper oracle
[[email protected] ~]# id oracle
[[email protected] ~]# passwd oracle
step-8#建立安裝目錄並賦權
[[email protected] ~]# mkdir /u01
[[email protected] ~]# mkdir /u02
[[email protected] ~]# chown -R oracle:oinstall /u01
[[email protected] ~]# chown -R oracle:oinstall /u02
[[email protected] ~]# su oracle
[[email protected] ~]# mkdir -p /u01/app/oracle/product/11.2.0/db_1
[[email protected] ~]# mkdir -p /u02/oradata
[[email protected] ~]# mkdir -p /u02/oradata/oracledb #oracledb為你資料庫執行個體名
step-9#設定oracle環境變數(使用oracle帳號登入案頭,並開啟terminal視窗檔案最後最後加入如下環境變數的設定行)
[[email protected] ~]# vi /home/oracle/.bash_profile
[plain] view plain copy
- ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
- ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1; export ORACLE_HOME
- LD_LIBRARY_PATH=$ORACLE_HOME/lib; export LD_LIBRARY_PATH
- ORACLE_SID=oracledb; export ORACLE_SID
- ORA_NLS33=$ORACLE_HOME/nls/admin/data; export ORA_NLS33
- NLS_LANG=american_america.zhs16gbk;export NLS_LANG
- PATH=$ORACLE_HOME/bin:$PATH; export PATH
[[email protected] ~]# source /home/oracle/.bash_profile(使配置立即生效)
[[email protected] ~]# env(檢查環境變數設定是否OK)
step-10#上傳安裝檔案
(1)使用oracle帳號登入:SSH Secure File Transfer Client
(2)上傳安裝包到:/home/oracle/Downloads 目錄
step-11#解壓oracle安裝檔案(進入:/home/oracle/Downloads目錄)
[[email protected]~]# unzip -o -d /home/oracle/Downloadslinuxamd64_12c_database_1of2.zip
[[email protected]~]# unzip -o -d /home/oracle/Downloadslinuxamd64_12c_database_2of2.zip
4安裝Oracle
[[email protected] ~]# xhost +
[[email protected] ~]# su oracle
[[email protected] ~] cd /home/oracle/Downloads/database
[[email protected] ~]# ./runInstaller
說明:接下來就會彈出安裝介面,然後根據網上的圖文並茂文章安裝。
5變更
開始下載的是:linuxamd64_12c 安裝時出現莫名錯誤,所以變更為:linux.x64_11gR2 為了完整卸載Oracle,使用了官網提供的:Oracle De-install Utility
6問題及解答
(1)修改 linux 核心檔案 sysctl -P 報錯
error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key
error: "net.bridge.bridge-nf-call-iptables" is an unknown key
error: "net.bridge.bridge-nf-call-arptables" is an unknown key
解決方案如下:
[[email protected] ~]# modprobe bridge
[[email protected] ~]# lsmod|grep bridge
(2)安裝系統時swap分區建立過小,動態調整。所以在安裝作業系統的時候設定好swap分區及分配好大小即可
方法:用檔案作為Swap分區,操作如下
1.建立要作為swap分區的檔案:增加1GB大小的交換分區,則命令寫法如下,其中的count等於想要的塊的數量(bs*count=檔案大小)。
# dd if=/dev/zero of=/root/swapfile bs=1M count=1024
2.格式化為交換分區檔案:
# mkswap /root/swapfile #建立swap的檔案系統
3.啟用交換分區檔案:
# swapon /root/swapfile #啟用swap檔案
4.使系統開機時自啟用,在檔案/etc/fstab中添加一行:
/root/swapfile swap swap defaults 0 0
(3)yum安裝源中找不到一個包,結果換了yum源也找不到,白費力氣
修改yum源的方法有兩種,很多朋友喜歡修改yum.repos.d這個檔案變更,deepvps感覺這個方法不是太好,以下這個方法就方便多了。
在CentOS系統中,可以直接通過yum來安裝組件,但系統預設的yum源速度往往不盡人意,都串連海外的,為了在國內達到快速安裝的目的,就要需要修改yum源,可以使用
http://mirrors.163.com/ http://mirrors.sohu.com 這2個國內源。
執行以下命令就可以了
cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo.bak
wget http://mirrors.163.com/.help/CentOS-Base-163.repo或wget http://mirrors.sohu.com/help/CentOS-Base-sohu.repo
運行yum makecache產生緩衝
4控制台頁面部分按鈕上的文字是亂碼解決辦法(如登入介面的:登入按鈕)
解決辦法:
em的亂碼是由java引起的,em的按鈕是由java產生的圖,oracle 11g使用的是jdk1.5,jdk1.5以後有了一個簡便方法來解決這個問題。
在Oracle伺服器上的操作需以Oracle使用者進行操作,步驟如下:
1. 從windows中擷取字型檔simsun.ttc
2. 在目錄$ORACLE_HOME/jdk/jre/lib/fonts中建立檔案夾fallback
command: mkdir fallback
3. 將字型檔simsun.ttc拷貝到剛剛建立好的fallback目錄下,並重新命名為simsun.ttf(由於windows字型具有著作權,所以不能用於商用)
command:
mv simsun.ttc simsun.ttf
chmod 755 simsun.ttf
4. 清理一下em的緩衝
command: rm $ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/em/em/cabo/images/cache/zhs/*.gif
5. 停止並重啟dbconsole
command:
emctl stop dbconsole
emctl start dbconsole
再去瀏覽器中重新重新整理一下em,發現按鈕已經不再是亂碼了
5:1521 1158兩個連接埠未開啟導致其他機器訪問不到web控制端和串連不到oracle
參考:http://blog.csdn.net/jemlee2002/article/details/7042991
6: kdump啟動失敗
在案頭環境下,直接停用kdump
7常用操作方法及命令(給linux新手)
(1)在圖形介面還可以在多個介面中進行切換:在X-window圖形操作介面中按“Alt+Ctrl+功能鍵Fn n=1~6 ”就可以進入Console字元操作介面。
按“Alt+Ctrl+F7”即可回到剛才的X-window中
(2)
rm -f 刪除檔案
rm -rf 刪除檔案夾
(3)
cp /u01/app/oracle/product/11.2.0/db_1/jdk/jre/lib/fonts/a.txt /home/oracle/ (從什麼位置複製檔案到什麼位置)
8Oracle操作管理
(1)啟動資料庫
[[email protected]~]sqlplus /nolog
SQL> connect system/system as sysdba
SQL> startup
(2)啟動監聽
[[email protected]~]lsnrctl start
(3)啟動管理平台
[[email protected]~]emctl start dbconsole
【特殊說明】
(1)關閉伺服器時最好手動停止掉oracle
(2)為了使伺服器資源佔用小,oracle啟動後伺服器直接切到命令列下。如果運行穩定後,則直接修改作業系統預設啟動到命令列
(1)停止資料庫
[[email protected]~]sqlplus /nolog
SQL> connect system/system as sysdba
SQL> shutdown
(2)停止監聽
[[email protected]~]lsnrctl stop
(3)停止管理平台
[[email protected]~]emctl stop dbconsole
9 PLSQL安裝配置(參考文章,我是一次搞定)
1,先到Oracle網站下載Instant Client :http://www.oracle.com/technology/global/cn/software/tech/oci/instantclient/index.html根據你的作業系統
選擇不同的Instant Client版本下載回是一個壓縮檔,解壓之後的檔案夾叫:D:/instantclient_11_2.放在你喜歡的目錄即可.例如:D:/instantclient_11_2
我的下載路徑(http://download.oracle.com/otn/nt/instantclient/112030/instantclient-basic-nt-11.2.0.3.0.zip)
2.在D:/instantclient_11_2目錄下建立目錄network,在network目錄下再建立admin目錄,在admin目錄下建立檔案tnsnames.ora,使用文字編輯器開啟寫入如下內容:
MWDB=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.58)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = MWDB)
)
)
第一個MWDB:表示定義遠程伺服器的在本地主機名稱
第二個MWDB:遠端資料庫執行個體名
3、添加一個環境變數,名為TNS_ADMIN,值為tnsnames.ora檔案所在路徑。比如我的本機為:D:/instantclient_11_2/network/admin
4、設定ORACLE的語言,添加環境變數NLS_LANG ,值為SIMPLIFIED CHINESE_CHINA.ZHS16GBK
如果不清楚遠端資料庫的ORACLE 語言,可以ssh或者telnet到遠程機器,在命令介面輸入,用命令列串連到資料庫。
select * from nls_instance_parameters;
查看NLS_LANGUAGE 的值
NLS_LANGUAGE
NLS_TERRITORY
5、下載並安裝PL.SQL.Developer配置應用
配置tools->preferences->connection
Oracle Home D:/instantclient_11_2
OCI library D:/instantclient_11_2/oci.dll
6、關閉PL/SQL Developer,重起Developer.
主機名稱就會出現在PL/SQL Developer的列表裡,輸入使用者名稱密碼,就可以登入遠程oracle 11g資料庫了
<完>
Centos6.5下Oracle 11g R2安裝過程