新到的云主機環(huán)境邻邮,系統(tǒng)是CentOS 7 x86_64,需要安裝上安裝Oracle11.2g克婶。摸索很長時間筒严,終于折騰搞定了。
下載 Oracle
- 下載地址:Oracle 11.2.0.2 (因為不是已付費用戶情萤,只能下載 11.2.0.2鸭蛙,不能下載最新的11.2.0.4。囧)
下載下來之后是有兩個壓縮包:
- 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
配置
增加oracle用戶和相關(guān)用戶組
-
切換到root用戶
su - root
-
增加用戶組
--required groups
/usr/sbin/groupadd -g 501 oinstall
/usr/sbin/groupadd -g 502 dba
/usr/sbin/groupadd -g 503 oper -
增加用戶
/usr/sbin/useradd -u 502 -g oinstall -G dba,oper oracle
-
設(shè)置oracle用戶的密碼
passwd oracle
然后輸入想要設(shè)置的密碼筋岛。
系統(tǒng)配置
-
修改
/etc/sysctl.conf
vim /etc/sysctl.conf
增加以下內(nèi)容:
kernel.shmmni = 4096 kernel.shmmax = 4398046511104 kernel.shmall = 1073741824 kernel.sem = 250 32000 100 128 fs.aio-max-nr = 1048576 fs.file-max = 6815744 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
使修改生效:
/sbin/sysctl -p
-
修改
/etc/security/limits.conf
vim /etc/security/limits.conf
增加以下內(nèi)容
oracle soft nproc 131072 oracle hard nproc 131072 oracle soft nofile 131072 oracle hard nofile 131072 oracle soft core unlimited oracle hard core unlimited oracle soft memlock 50000000 oracle hard memlock 50000000
-
確保
/etc/hosts
中含有服務(wù)器機器名稱娶视,像這樣(如果已經(jīng)含有了,就略過此步):<IP-address> <fully-qualified-machine-name> <machine-name>
比如服務(wù)器名稱是centos7-001睁宰,曾可以配置成這樣:
127.0.0.1 centos7-001 localhost localhost.localdomain
然后ping一下試試:
ping -c 1 centos7-001
正確的結(jié)果:
--- centos7 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms
-
修改
/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
-
修改oracle用戶環(huán)境變量
切換到 oracle 用戶
su - oracle
修改
.bash_profile
肪获,添加以下內(nèi)容:# Oracle Settings export TMP=/tmp umask 022 export ORACLE_BASE=/data2/oracle/app # 安裝路徑根據(jù)實際情況修改 export ORACLE_BASE ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 # 安裝路徑根據(jù)實際情況修改 export ORACLE_HOME PATH=$PATH:$ORACLE_HOME/bin export PATH
使之生效:
source .bash_profile
-
創(chuàng)建安裝路徑并授權(quán)給oracle用戶
su - root mkdir -p /data2/oracle/app chown oracle:oinstall /data2/oracle/app chmod 775 /data2/oracle/app mkdir -p /data2/oracle/app/oracle chown oracle:oinstall /data2/oracle/app/oracle chmod 775 /data2/oracle/app/oracle mkdir -p /data2/oracle/app/oracle/product/11.2.0/db_1 chown oracle:oinstall -R /data2/oracle/app/oracle
安裝依賴
> yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*.i686 elfutils-libelf-devel gcc gcc-c++ glibc*.i686 glibc glibc-devel glibc-devel*.i686 ksh libgcc*.i686 libgcc libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.i686 libaio libaio*.i686 libaio-devel libaio-devel*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686 libXp
安裝圖形界面
-
CentOS 7 安裝
GNOME
圖形界面yum groupinstall "GNOME Desktop" "Graphical Administration Tools"
-
安裝Gnome GUI使用時報錯:
Transaction check error: file /usr/lib/systemd/system/blk-availability.service from install of device-mapper-7:1.02.107-5.el7.x86_64 conflicts with file from package lvm2-7:2.02.105-14.el7.x86_64 file /usr/sbin/blkdeactivate from install of device-mapper-7:1.02.107-5.el7.x86_64 conflicts with file from package lvm2-7:2.02.105-14.el7.x86_64 file /usr/share/man/man8/blkdeactivate.8.gz from install of device-mapper-7:1.02.107-5.el7.x86_64 conflicts with file from package lvm2-7:2.02.105-14.el7.x86_64 Error Summary -------------
解決辦法,先升級lvm2:
yum -y install lvm2
安裝Oracle
-
因為使用的是遠程主機柒傻,所以要遠程Linux圖形桌面孝赫,我這里使用的是VNC
在遠程主機上安裝vnc:
yum -y install vnc-server
設(shè)置密碼:
vncpasswd
啟動vncserver:
vncserver
設(shè)置DISPLAY:
export DISPLAY=:1
設(shè)置圖形桌面訪問權(quán)限
xhost +
vncserver默認端口是5900 + 序號,第一個即
5901
红符。在本地的windows環(huán)境下安裝并運行vnc客戶端青柄,下載地址: https://www.realvnc.com/download/vnc/
-
使用vnc連接到遠程主機劫映,在桌面上右鍵打開命令行,進入到oracle所在路徑,然后:
cd database
export DISPLAY=:1
./runInstaller然后就可以啟動oracle圖形界面安裝向?qū)Я恕?/p>
遇到的問題
-
安裝Gnome GUI使用時報錯:
Transaction check error: file /usr/lib/systemd/system/blk-availability.service from install of device-mapper-7:1.02.107-5.el7.x86_64 conflicts with file from package lvm2-7:2.02.105-14.el7.x86_64 file /usr/sbin/blkdeactivate from install of device-mapper-7:1.02.107-5.el7.x86_64 conflicts with file from package lvm2-7:2.02.105-14.el7.x86_64 file /usr/share/man/man8/blkdeactivate.8.gz from install of device-mapper-7:1.02.107-5.el7.x86_64 conflicts with file from package lvm2-7:2.02.105-14.el7.x86_64 Error Summary -------------
解決辦法刹前,先升級lvm2:
yum -y install lvm2
-
安裝oracle時報錯memcpy@GLIBC_2.14未找到:
INFO: /lib64/libstdc++.so.5: undefined reference to `memcpy@GLIBC_2.14' collect2: error: ld returned 1 exit status INFO: make: *** [ctxhx] Error 1 INFO: End output from spawned process.
解決辦法泳赋,先查看 /usr/lib64/libc.a是否存在:
ls /usr/lib64 | grep libc.a
如果查找不到先安裝:glibc-static,如果有則略過此步
yum -y install glibc-static
修改oracle安裝目錄下 $ORACLE_HOME/ctx/lib/ins_ctx.mk
將ctxhx: $(CTXHXOBJ) $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK)
修改為:
ctxhx: $(CTXHXOBJ) -static $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK) /usr/lib64/libc.a
然后點擊retry通過
-
安裝oracle時報錯Error in invoking target 'agent nmhs':
Error in invoking target 'agent nmhs' of makefile '/data2/oracle/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk'
解決辦法:修改
$ORACLE_HOME/sysman/lib/ins_emagent.mk
將$(MK_EMAGENT_NMECTL)
修改為
$(MK_EMAGENT_NMECTL) -lnnz11
然后點擊retry通過
至此喇喉,就可以使用sqldevelper等客戶端連接oracle了