Linux下安装Oracle需要做一些准备工作,如,依赖包、组和用户、内核参数、资源限制、目录、环境变量等。
本系列文章是把作者刚接触和学习Linux时候的实操记录分享出来,内容主要包括Linux入门的一些理论概念知识、Web程序、mysql数据库的简单安装部署,希望能够帮到一些初学者,少走一些弯路。
注意:
Linux下区分大小写;
Linux多用户多线程;
Linux下每个文件和目录都有访问权限;
Linux下Oracle安装准备工作
Linux下安装Oracle需要做一些准备工作,如,依赖包、组和用户、内核参数、资源限制、目录、环境变量等。
安装环境:CentOS7 64位、Oracle11g(11.2)
#Linux下Oracle安装准备工作#、#CentOS7#、#Oracle11g#
一、安装oracle依赖包
Oracle11g在centos7环境下的依赖包
binutils-2.23.52.0.1-12.el7.x86_64
compat-libcap1-1.10-3.el7.x86_64
compat-libstdc++-33-3.2.3-71.el7.i686
compat-libstdc++-33-3.2.3-71.el7.x86_64
gcc-4.8.2-3.el7.x86_64
gcc-c++-4.8.2-3.el7.x86_64
glibc-2.17-36.el7.i686
glibc-2.17-36.el7.x86_64
glibc-devel-2.17-36.el7.i686
glibc-devel-2.17-36.el7.x86_64
ksh
libaio-0.3.109-9.el7.i686
libaio-0.3.109-9.el7.x86_64
libaio-devel-0.3.109-9.el7.i686
libaio-devel-0.3.109-9.el7.x86_64
libgcc-4.8.2-3.el7.i686
libgcc-4.8.2-3.el7.x86_64
libstdc++-4.8.2-3.el7.i686
libstdc++-4.8.2-3.el7.x86_64
libstdc++-devel-4.8.2-3.el7.i686
libstdc++-devel-4.8.2-3.el7.x86_64
libXi-1.7.2-1.el7.i686
libXi-1.7.2-1.el7.x86_64
libXtst-1.2.2-1.el7.i686
libXtst-1.2.2-1.el7.x86_64
make-3.82-19.el7.x86_64
sysstat-10.1.5-1.el7.x86_64
ODBC驱动包,官方要求的,不装也行,一般我们不在服务器上使用ODBC。
unixODBC-2.3.1-6.el7.x86_64 or later
unixODBC-2.3.1-6.el7.i686 or later
unixODBC-devel-2.3.1-6.el7.x86_64 or later
unixODBC-devel-2.3.1-6.el7.i686 or later
注意:这里面需要注意的是,列表里的有的同一个包要求既有32位又有64位,安装时需要输入包名(64位)、含.i686后缀名的包名(32位),否则默认只会安装.x86_64的包。如:glibc glibc.i686
使用yum安装Oracle依赖包
# yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33.i686 gcc gcc-c++ glibc glibc.i686 glibc-devel glibc-devel.i686 ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686 libstdc++-devel libstdc++-devel.i686 libXi libXi.i686 libXtst libXtst.i686 make sysstat
#安装ODBC驱动包
# yum -y install unixODBC unixODBC.i686 unixODBC-devel unixODBC-devel.i686
二、创建Oracle组和用户
# groupadd oinstall #创建安装用户组
# groupadd dba #创建dba用户组
# useradd -g oinstall -G dba oracle #创建用户,-g设置oinstall 为主组,-G设置dba为附加组。
# id oracle #查看oracle用户的用户和组信息,确认oracle所属组是正确的
# passwd oracle #设置oracle用户的密码
三、配置linux系统内核参数
# vim /etc/sysctl.conf
增加以下内容
semmni = 128
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使内核参数生效
# sysctl -p
四、配置oracle用户的资源限制
配置oracle用户的资源限制,主要包括打开文件数nofile、用户可用进程数nproc、进程堆栈段的大小stack,ulimit资源限制包含软限制soft、硬限制hard。
# vim /etc/security/limits.conf
添加如下内容:
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768
五、创建oracle所需目录
# mkdir -p /u01/app/oracle # oracle根目录,-p 表示递归建立目录
# chown -R oracle:oinstall /u01 #将目录分配给oracle用户
# chmod -R 775 /u01 #将目录设置为775权限
六、设置DISPLAY环境变量
注意:图形化界面安装需要配置此项,静默安装不需要。
由于安装时采用的是oracle的OUI图形化界面,需要X支持,而默认oracle用户是不支持图形化操作的,必须以root的身份设置X给oracle用户使用。
root用户运行如下命令:
# xhost +
执行完提示:access control disabled,clients can connect from any host
(访问控制已禁用,客户端可以从任何主机连接),出现以上文字表示设置成功。
如果需要远程安装Oracle,则需要使用Oracle设置DISPLAY环境变量为客户机IP。
$ export DISPLAY=172.16.2.111:0.0
七、配置oracle用户环境变量
oracle用户下执行
# su - oracle #切换oracle用户
执行
# vim .bash_profile
加入以下内容:
#Oracle用户变量
umask 022
export ORACLE_BASE=/u01/app/oracle #oracle根目录
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 #oracle产品安装目录
export ORACLE_SID=orcl #oracle数据库实例名
#添加PATH系统环境变量
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
使环境变量生效
# source .bash_profile #使环境变量生效
设置临时环境变量
#当系统本身的/tmp目录空间小于1GB时,需要自己设置这2项,否则不需要
# export TMP=/u01/tmp
# export TMPDIR=$TMP
# export ORACLE_TERM=xterm #xterm窗口模式安装
八、防止安装界面乱码问题
原因是操作系统本身没有中文包或中文字体。
1.方法一:设置临时编码,使用英文界面安装
# export LANG=en
2.方法二:安装中文支持,增加字体库
# yum install kde-l10n-Chinese
一般情况下,安装完中文支持会自动安装字体库,如果没有自动安装字体,则下载字体文件,将zysong.ttf复制到/usr/share/fonts/zh_CN/TrueType目录
# mkdir -p /usr/share/fonts/zh_CN/TrueType
# mv zysong.ttf /usr/share/fonts/zh_CN/TrueType
IT小胖豆:初学者踩坑之路及过程分享,希望能够帮到一些初学者,欢迎各位IT打工人,入坑讨论-_-