一、安装包
linux.x64_11gR2_database_1of2.zip、linux.x64_11gR2_database_2of2.zip
链接:https://pan.baidu.com/s/17hryvJXTnbKIKOMo92Qxfg
提取码:dduy
二、系统环境设置
1、关闭防火墙
systemctl stop firewalld.service
systemctl status firewalld.service
systemctl disable firewalld.service
2、关闭selinux
vim /etc/selinux/config
设置SELINUX=disabled
3、设置系统参数
(1)修改用户的 SHELL 的限制(资源限制),修改 /etc/security/limits.conf 文件
vi /etc/security/limits.conf
添加以下内容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
(2)修改 /etc/pam.d/login 文件
a、查找pam_limits.so文件位置:find / -name pam_limits.so,获取路径:/usr/lib64/security/pam_limits.so
b、修改 /etc/pam.d/login 文件:vim /etc/pam.d/login,添加以下内容:
session required /usr/lib64/security/pam_limits.so
session required pam_limits.so
(3)修改 linux 内核,修改 /etc/sysctl.conf 文件
vim /etc/sysctl.conf,添加以下内容:
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
使 /etc/sysctl.conf更改立即生效,执行:sysctl -p,显示:
(4)编辑 /etc/profile
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
(5) 修改内核版本名称
因为oracle默认不支持在centos7上安装,所以改为redhat-7
a、备份:cp /etc/redhat-release /etc/redhat-release.bak
b、修改:vim /etc/redhat-release
四、oracle环境设置
1、 创建oracle数据库的系统用户和用户组
a、groupadd oinstall #创建oinstall组
b、groupadd dba #创建dba组
c、useradd -g oinstall -G dba -m oracle #创建oracle用户指定主组oinstall和附属组dba
d、groups oracle #查看oracle用户组
e、passwd oracle #为oracle用户设置密码
2、创建oracle数据库安装目录
a、mkdir -p /data/oracle #oracle数据库安装目录
b、mkdir -p /data/oraInventory #oracle数据库配置文件目录
c、mkdir -p /data/database #oracle数据库软件包解压目录
d、chown -R oracle:oinstall /data/oracle/ #更改/data/oracle/文件用户和组为oracle用户和oinstall组
e、chown -R oracle:oinstall /data/oraInventory/ #更改/data/oraInventory/文件用户和组为oracle用户和oinstall组
f、chown -R oracle:oinstall /data/database/ #更改/data/database/文件用户和组为oracle用户和oinstall组
3、安装依赖包
yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers gl ibc-static kernel-headers libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel libstdc++-static make numactl-devel sysstat unixODBC unixODBC-devel
4、配置Oracle用户环境变量
vim /home/oracle/.bash_profile
export ORACLE_BASE=/data/oracle # 数据库安装路径
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=orcl # 实例名
export ORACLE_TERM=xterm
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export LANG=en_US.UTF-8
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
source /home/oracle/.bash_profile
五、安装VNC
参考地址:Centos7.6安装VNC
六、安装oracle数据库
1、解压oracle压缩包
upzip linux.x64_11gR2_database_1of2.zip /data/
upzip linux.x64_11gR2_database_2of2.zip /data/
2、启动VNC(root用户)
vncserver :1 -geometry 1920x1080
export DISPLAY=localhost:1
xhost +
3、VNC客户端连接
4、安装
(1)切换oracle用户:su - oracle
(2)执行:export DISPLAY=localhost:1
(3)切换到/data/database目录:cd /data/database
(4)执行安装程序:./runInstaller 进入远程VNC桌面进行安装
(5)具体安装:
取消勾选,然后Next
选择Yes
选择第一个
根据提示输入密码
a、解决swap size 检查失败问题
解决办法:增加大约4G左右的swap!
1、使用root用户,在/tmp(随意),下执行下面语句
dd if=/dev/zero of=swapfree bs=32k count=128000
(增加swap大小为bs*count,bs为block,count为数量)
上图可以看出,通过这个语句创建了一个2G的文件swapfree
2、将创建的文件用做交换分区
执行语句:mkswap swapfree
3、开启这个交换空间
执行语句:swapon swapfree
4、通过free命令查看,交换空间在原来交换空间的基础上增加了2G
5、在/etc/fstab中加入下面两行,设置此交换分区开机启动
/dec/hdb5 swap swap defaults 0 0
/tmp/swapfree swap swap defaults 0 0
b、解决缺包问题
yum -y install libaio-0.3.105compat-libstdc++-33-3.2.3libgcc-3.4.6libstdc++-3.4.6unixODBC-2.2.11unixODBC-devel-2.2.11pdksh-5.2.14
如果该问题没解决,去阿里巴巴镜像下载相应的rpm文件,再用:rpm -ivh unixODBC-devel-2.2.11-7.1.x86_64.rpm --nodeps --force
c、解决完后再点击Check Again,剩下的就可以忽略了
安装过程会弹出一下错误信息,不关闭报错窗口,在oracle用户下修改/u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ins_ctx.mk(/u01/app/oracle/product/11.2.0/dbhome_1/为oracle安装目录,根据自己安装的目录查找),找到文件的第11行,
将 ctxhx: $(CTXHXOBJ) $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK)
修改为: ctxhx: $(CTXHXOBJ) -static $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK) /usr/lib64/stdc.a
然后点击 Retry
修改完后会继续报一下错误,
解决方法:在makefile中添加链接libnnz11库的参数
修改/u01/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk,修改内容在文件第190行,将
(MKEMAGENTNMECTL)修改为:(MKEMAGENTNMECTL)修改为:(MK_EMAGENT_NMECTL) -lnnz11
点击Retry继续安装即可安装。
大概十几分钟后安装完毕
切换root用户 su - root
cd /data/oraInventory/
/orainstRoot.sh
cd /data/oracle/product/11.2.0/db_1
./root.sh