1新建yum倉庫
如果有外網,可以配置阿里雲的源,沒外網,可以把光驅里的系統碟作為源倉庫來安裝一些oracle依賴的包;
mount /dev/cdrom /mnt/
sed -i 's/gpgcheck=1/gpgcheck=0/' /etc/yum.conf
echo "[base]" >/etc/yum.repos.d/CentOS-Base.repo
echo "name=CentOS-Base" >>/etc/yum.repos.d/CentOS-Base.repo
echo "baseurl=file:///mnt/Server" >>/etc/yum.repos.d/CentOS-Base.repo
echo "enabled=1" >>/etc/yum.repos.d/CentOS-Base.repo
2安裝包
yum -y install binutils*
yum -y install compat-db*
yum -y install control-center*
yum -y install gcc*
yum -y install gcc-c++*
yum -y install glibc*
yum -y install glibc-common*
yum -y install libstdc++*
yum -y install libstdc++-devel*
yum -y install make*
yum -y install pdksh*
yum -y install sysstat*
yum -y install libXp*
可以一次性安裝,然后,rpm -q binutils* compat-db* control-center* gcc* gcc-c++* glibc* glibc-common* libstdc++* libstdc++-devel* make* pdksh* sysstat* install libXp*(檢查這些包是否都已經安裝)
3
/usr/sbin/groupadd oinstall
/usr/sbin/groupadd dba
/usr/sbin/useradd -g oinstall -G dba oracle
echo oracle|passwd --stdin oracle
新建數據庫用戶組和用戶,並把oracle用戶加入到群組里,如果oracle沒成功加入用戶組,后面會出現一些提示權限的問題
4
echo "kernel.shmmni = 4096" >> /etc/sysctl.conf
echo "kernel.sem = 250 32000 100 128" >> /etc/sysctl.conf
echo "fs.file-max = 65536" >> /etc/sysctl.conf
echo "net.ipv4.ip_local_port_range = 1024 65000" >> /etc/sysctl.conf
echo "net.core.rmem_default = 262144" >> /etc/sysctl.conf
echo "net.core.rmem_max = 262144" >> /etc/sysctl.conf
echo "net.core.wmem_default = 262144" >> /etc/sysctl.conf
echo "net.core.wmem_max = 262144" >>/etc/sysctl.conf
sysctl -p
修改一些內核參數
5
mkdir /oracle
mkdir /oracle/10g
mkdir /osource
chown -R oracle:oinstall /oracle
創建oracle安裝目錄/oracle/10g
sed -i 's/5/4/' /etc/redhat-release修改版本到4
修改oracle用戶環境變量
修改oracle用戶家目錄下/users/oracle/.cshrc
ORACLE_BASE=/oracle
ORACLE_HOME=/oracle/10g
ORACLE_SID=***(數據庫的名字)
PATH=$ORACLE_HOME/bin:$PATH:.
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
安裝文件傳到/osource目錄下解壓
gunzip 10201_database_linux_x86_64.cpio.gz
cpio -idm < 10201_database_linux_x86_64.cpio
解壓后生成database目錄
因安裝Oracle數據庫時需調用圖形界面,可在Linux本機上進行以下步驟,或用Xshell+Xmanager。
以oracle用戶登錄,用locale命令查看當前系統語言環境,如果是中文(zh_CN.UTF-8),為避免Oracle的安裝界面出現亂碼,需將語言環境臨時改成英文:
$ export LANG=en_US
到/osource/database目錄下
運行runInstaller文件:
runInstaller
按照提示完成圖形化安裝
6創建完后,在oracle用戶用dbca工具創建數據庫:dbca
注意事項:建庫過程中選擇Character set為ZHS16GBK(一般默認為WE8ISO8859P1),NCHAR Character set為AL16UTF16。
7建庫完成后
在oracle用戶下運行數據庫連接命令:
$ sqlplus / as sysdba
若顯示“Connected to an idle instance”則說明數據庫存在問題)
回到root用戶輸入命令:
lsnrctl start(啟動oracle監聽)
啟動監聽過程可能會報錯失敗:
lsnrctl start
LSNRCTL for 32-bit Windows: Version 11.2.0.1.0 - Production on 03-8月 -2011 02:4
1:43
Copyright (c) 1991, 2010, Oracle. All rights reserved.
啟動tnslsnr: 請稍候...
TNSLSNR for 32-bit Windows: Version 11.2.0.1.0 - Production
系統參數文件為D:\app\zhou\product\11.2.0\dbhome_1\network\admin\listener.ora
寫入d:\app\zhou\diag\tnslsnr\zhou-PC\listener\alert\log.xml的日志信息
監聽: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521)))
監聽: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=)(PORT=2484)))
監聽該對象時出錯: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=)(PORT=1521
)))
TNS-12545: 因目標主機或對象不存在, 連接失敗
TNS-12560: TNS: 協議適配器錯誤
TNS-00515: 因目標主機或對象不存在, 連接失敗
32-bit Windows Error: 49: Unknown error
監聽程序未能啟動。請參閱上面的錯誤消息...
根據提示host有問題:除了修改listener.ora,還要修改tnsnames.ora里面的host參數為自己主機的hostname
再運行:
SQL> alter system set filesystemio_options=directio scope=spfile;
應該看到“System altered
最后運行:
SQL> startup force
應該看到“ORACLE instance started…”字樣。
完成后exit。
配置TNS、LISTENER
-
在oracle用戶下運行命令:
$ netca
-
進行LISTENER配置。
一路“Next”即可。
-
再進行Local Net Service Name 配置。
選擇“Add”—>輸入服務名(如test)—>選擇“TCP”—>輸入Host name(填數據庫服務器IP地址),並使用標准端口號1521—>選擇“Yes,perform a test”,點擊“Change Login”—>輸入正確的用戶名和口令,看到返回“Connecting...Test successful”提示。
完成后退出。