在centos系统上安装Oracle数据库是一个复杂且细致的过程,需要多个步骤和配置,以下将详细描述这一过程:
一、检查并准备Swap分区
1、查看Swap分区空间:确保swap分区空间不小于2G,可以通过命令grep SwapTotal /proc/meminfo
检查。

二、修改系统标识
1、修改系统标识文件:由于Oracle默认不支持CentOS,需要将系统标识改为RedHat,使用命令vim /etc/redhatrelease
改为RedHat7
。
三、调整系统配置
1、修改sysctl.conf文件:编辑/etc/sysctl.conf
文件,添加以下内容以优化系统性能:
- fs.aiomaxnr = 1048576
- fs.filemax = 6815744
- kernel.shmmni = 4096
- kernel.sem = 250 32000 100 128
- kernel.shmall = 2097152
- kernel.shmmax = 2147483648
- net.ipv4.ip_local_port_range = 9000 65500
- net.ipv4.icmp_echo_ignore_broadcasts = 1
- net.ipv4.conf.all.rp_filter = 1
- net.core.rmem_default = 262144
- net.core.rmem_max = 4194304
- net.core.wmem_default = 262144
- net.core.wmem_max = 1048576
2、启用新的配置:运行sysctl p
使配置生效。
四、安装必要的软件包
1、安装必备软件包:运行以下命令安装Oracle所需的各种软件包:
- yum y install binutils* compatlibcap1* compatlibstdc++* gcc* gccc++* glibc* glibcdevel* ksh* libaio* libaiodevel* libgcc* libstdc++* libstdc++devel* libXi* libXtst* make* sysstat* elfutils* unixODBC* unzip lrzsz
五、创建用户组和用户
1、创建用户组:分别创建oinstall
和dba
用户组。
- groupadd oinstall
- groupadd dba
2、创建Oracle用户:创建Oracle用户并将其添加到上述用户组中。

- useradd g dba m oracle
- usermod a G oinstall oracle
3、设置用户密码:为Oracle用户设置密码。
- passwd oracle
六、创建目录并修改权限
1、创建Oracle相关目录:创建Oracle的主目录、配置目录和压缩包解压目录。
- mkdir p /data/oracle
- mkdir p /data/inventory
- mkdir p /data/src
2、修改目录权限:将目录的所有者更改为Oracle用户。
- chown R oracle:oinstall /data/oracle
- chown R oracle:oinstall /data/inventory
- chown R oracle:oinstall /data/src
七、配置安全性限制和环境变量
1、修改用户限制:编辑/etc/security/limits.conf
文件,添加以下内容。
- oracle soft nproc 2047
- oracle hard nproc 16384
- oracle soft nofile 1024
- oracle hard nofile 65536
2、修改用户环境变量:编辑/home/oracle/.bashrc
文件,添加以下内容。
- export ORACLE_BASE=/data/oracle
- export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
- export ORACLE_SID=orcl
- export ORACLE_UNQNAME=orcl
- export PATH=$ORACLE_HOME/bin:$PATH
- export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
- export LANG=C
- export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
3、激活环境变量:运行source /home/oracle/.bashrc
使环境变量生效。

八、关闭SELinux和防火墙
1、关闭SELinux:编辑/etc/selinux/config
文件,将SELINUX
设置为disabled
。
- SELINUX=disabled
2、重启机器:运行reboot
命令重启系统。
3、关闭防火墙:运行以下命令关闭防火墙。
- systemctl stop firewalld.service
- systemctl disable firewalld.service
九、安装Oracle数据库软件
1、上传并解压安装包:将Oracle数据库安装包上传到指定目录,并解压。
- unzip linux.x64_11gR2_database_1of2.zip d /data/src/
- unzip linux.x64_11gR2_database_2of2.zip d /data/src/
- chown R oracle:oinstall /data/src/
2、进入Oracle用户:切换到Oracle用户。
- su oracle
3、编辑安装响应文件:编辑/data/src/database/response/db_install.rsp
文件,根据需求修改参数。
- oracle.install.option=INSTALL_DB_SWONLY # 安装类型
- ORACLE_HOSTNAME=oracle.server # 主机名称
- UNIX_GROUP_NAME=oinstall # 安装组
- INVENTORY_LOCATION=/data/inventory # INVENTORY目录
- SELECTED_LANGUAGES=en,zh_CN # 选择语言
4、执行安装程序:运行安装程序开始安装。
- ./runInstaller
5、按照提示进行安装:根据安装程序的提示完成安装过程。
十、启动并验证Oracle数据库服务
1、启动Oracle数据库服务:安装完成后,可以通过以下命令启动Oracle数据库服务。
- sqlplus / as sysdba
- startup
2、验证安装:通过检查侦听端口(默认1521)是否启动来验证Oracle数据库是否成功安装。
- netstat tuln | grep 1521
常见问题及解决方法
Q1:如何修改Oracle用户的密码?
A1:可以使用passwd oracle
命令来修改Oracle用户的密码。
Q2:如何确认Oracle数据库是否已成功安装?
A2:可以通过检查Oracle数据库服务的端口是否在监听来确认,如果端口1521正在监听,则表示Oracle数据库已成功安装。
Q3:在安装过程中遇到“swap space不足”的问题怎么办?
A3:可以通过修改/etc/fstab
文件来增加swap分区的大小,然后运行swapon a
使更改生效。
Q4:如何更改Oracle数据库的字符集?
A4:在安装过程中,可以通过编辑响应文件db_install.rsp
中的NLS_LANG
参数来设置字符集,设置为AMERICAN_AMERICA.AL32UTF8
表示使用UTF8字符集。
Q5:如何在CentOS上卸载Oracle数据库?
A5:卸载Oracle数据库通常涉及以下几个步骤:停止Oracle服务、删除Oracle软件、删除Oracle用户及相关目录,具体操作可以参考Oracle官方文档或相关技术社区的指南。
通过以上步骤,您可以在CentOS系统上成功安装并配置Oracle数据库,如果在安装过程中遇到任何问题,建议查阅Oracle的官方文档或寻求专业技术支持。