一 环境准备
安装包:linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of2.zip
二 安装Oracle准备
2.1 用户名/组建立
代码语言:javascript复制 1 [root@oracle ~]# vi /etc/hosts
2 172.24.8.30 oracle #将localhost修改为相应的主机名
3 [root@oracle ~]# groupadd oinstall #创建用户组oinstall
4 [root@oracle ~]# groupadd dba #创建用户组dba
5 [root@oracle ~]# useradd -g oinstall -g dba -m oracle #创建oracle用户,并加入到oinstall和dba用户组0
6 [root@oracle ~]# echo x120952576 | passwd --stdin oracle #设置Oracle用户密码
2.2 相关目录创建
代码语言:javascript复制 1 [root@oracle ~]# mkdir -p /data/oracle #oracle数据库安装目录
2 [root@oracle ~]# mkdir -p /data/oraInventory #oracle数据库配置文件目录
3 [root@oracle ~]# mkdir -p /data/database #oracle数据库软件包解压目录
4 [root@oracle ~]# chown -R oracle:oinstall /data/oracle/
5 [root@oracle ~]# chown -R oracle:oinstall /data/oraInventory/
6 [root@oracle ~]# chown -R oracle:oinstall /data/database/ #设置目录所有者为oinstall用户组的oracle用户
提示:oracle默认不支持CentOS系统安装,需要如下修改
代码语言:javascript复制 1 [root@oracle data]# vi /etc/redhat-release
2 redhat-7
2.3 基础依赖包安装
根据Oracle官方给出参考:https://docs.oracle.com/cd/E11882_01/install.112/e47689/pre_install.htm#BABCFJFG
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
依次yum安装即可,也可高于以上建议版本:
代码语言:javascript复制 1 yum install gcc* gcc-* gcc-c -* glibc-devel-* glibc-headers-* compat-libstdc* libstdc* elfutils-libelf-devel* libaio-devel* sysstat* unixODBC-* pdksh-*。
swap要求2.67G
2.4 防火墙及SELinux设置
代码语言:javascript复制 1 [root@oracle ~]# systemctl stop firewalld.service
2 [root@oracle ~]# systemctl disable firewalld.service
3 [root@oracle ~]# setenforce 0
4 [root@oracle ~]# vi /etc/selinux/config
5 SELINUX=disabled
2.5 修改内核参数
代码语言:javascript复制 1 [root@oracle ~]# vi /etc/sysctl.conf
2 net.ipv4.icmp_echo_ignore_broadcasts = 1
3 net.ipv4.conf.all.rp_filter = 1
4 fs.file-max = 6815744 #设置最大打开文件数
5 fs.aio-max-nr = 1048576
6 kernel.shmall = 2097152 #共享内存的总量
7 kernel.shmmax = 2147483648 #最大共享内存的段大小
8 kernel.shmmni = 4096 #整个系统共享内存端的最大数
9 kernel.sem = 250 32000 100 128
简要描述这四个参数
SEMMSL: 每个信号集的最大信号数量
SEMMNS: 系统信号量(非信号集)最大数量
SEMOPM: 每次semop系统调用可执行的信号操作数
SEMMNI:系统信号量集最大数量
代码语言:javascript复制 1 net.ipv4.ip_local_port_range = 9000 65500 #可使用的IPv4端口范围
2 net.core.rmem_default = 262144
3 net.core.rmem_max= 4194304
4 net.core.wmem_default= 262144
5 net.core.wmem_max= 1048576
6 [root@oracle ~]# sysctl -p #使配置生效
2.6 提高软件运行性能
对oracle用户设置限制,提高软件运行性能
代码语言:javascript复制 1 [root@oracle ~]# vi /etc/security/limits.conf
2 @student - maxlogins 4
3 oracle soft nproc 2047
4 oracle hard nproc 16384
5 oracle soft nofile 1024
6 oracle hard nofile 65536
7 # End of file
2.7 修改环境变量
代码语言:javascript复制 1 [root@oracle ~]# vi /home/oracle/.bash_profile #修改Oracle用户的环境变量
2 export ORACLE_BASE=/data/oracle #oracle数据库安装目录
3 export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 #oracle数据库路径
4 export ORACLE_SID=orcl #oracle启动数据库实例名
5 export ORACLE_TERM=xterm #xterm窗口模式安装
6 export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH #添加系统环境变量
7 export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib #添加系统环境变量
8 export LANG=en_US #防止安装过程出现乱码
9 export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK #设置Oracle客户端字符集
10 [root@oracle ~]# source /home/oracle/.bash_profile
三 Oracle安装
3.1 解压安装包
代码语言:javascript复制 1 [root@oracle ~]$ cd /usr/local/src #进入/usr/local/src目录
2 [root@oracle src]$ ls
3 linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of2.zip
4 [root@oracle src]$ unzip linux.x64_11gR2_database_1of2.zip -d /data/database/ #解压
5 [root@oracle src]$ unzip linux.x64_11gR2_database_2of2.zip -d /data/database/ #解压
6 [root@oracle src]$ su root
7 Password:
8 [root@oracle src]# chown -R oracle:oinstall /data/database/database/
3.2 启动Oracle安装
采用oracle用户进入图形界面,并启动安装程序。
代码语言:javascript复制 1 [oracle@oracle ~]# su oracle
2 [oracle@oracle ~]$ cd /data/database/database/
3 [oracle@oracle database]$ ./runInstaller
注意:
1:以上必须进入图形界面之后操作;
2:若出现以下报错——
Could not execute auto check for display colors using command /usr/bin/xdpyinfo.
需要使用root用户执行以下操作,之后切换回oracle用户再次执行以上runInstaller即可。
代码语言:javascript复制 1 xhost 172.24.8.30
2 xhost SI:localuser:oracle
email可不填。
选择创建和配置数据库选项,下一步。
选择桌面学习版
将字符设置为utf8,密码需要大小写数字结合。
勾选“ignore all”
提示:failed依次每一个解决即可。
注意:安装程序对环境进行检查,由于CentOS的32bit程序包都是i686的,而Oracle要求i386,所以此处会失败,这确保依赖包存在的情况下忽略即可。
漫长的等待(基本上可以睡个午觉)
安装成功
四 添加侦听端口
4.1 配置侦听程序
使用oracle用户执行——
代码语言:javascript复制 1 [oracle@oracle ~]$ netca
4.2 配置另一侦听器
测试成功
五 其他环境优化
5.1 环境修改
代码语言:javascript复制 1 [root@oracle ~]# vi /data/oracle/product/11.2.0/dbhome_1/sqlplus/admin/glogin.sql
2 define_editor=vim #定义编辑器为vim
3 set linesize 160 #设置一行显示的字符
4 set pagesize 100 #设置一页显示的行数
5 set sqlprompt '_user@ _connect_identifier>' #设置提示符
5.2 支持键盘方向键操作
提示:默认oracle不支持方向键操作,需要安装rlwrap插件。
采用编译安装rlwrap-0.37.tar,过程略。
若报错如下——
则需要yum安装以下两个rpm包之后再次编译安装——
代码语言:javascript复制 1 [root@oracle ~]# yum -y install libtermcap-devel readline-devel
2 [root@oracle ~]# vi /home/oracle/.bash_profile
3 alias sqlplus='rlwrap sqlplus'
4 alias rman='rlwrap rman'
5 [root@oracle rlwrap-0.37]# su - oracle
6 [oracle@oracle ~]$ source .bash_profile
5.3 密码设置
代码语言:javascript复制 1 [oracle@oracle ~]$ sqlplus / as sysdba
2 SYS@ orcl>alter profile default limit password_life_time unlimited; #oracle默认180天过期,可设置口令永不过期