在CentOS上搭建Oracle环境是一个复杂的过程,涉及多个步骤和配置。以下是一个基于CentOS 7和Oracle 11g/12c的搭建步骤指南:
系统更新:
sudo yum update -y
安装依赖包:
sudo yum install -y gcc make binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel libaio libaio-devel numactl-devel sysstat unixODBC unixODBC-devel
关闭防火墙和SELinux:
sudo systemctl stop firewalld
sudo setenforce 0
sudo sed -i 's/SELINUX.*/SELINUX=disabled/' /etc/selinux/config
创建Oracle用户和组:
sudo groupadd oinstall
sudo groupadd dba
sudo useradd -g oinstall -G dba oracle
sudo passwd oracle
配置主机映射:
编辑 /etc/hosts
文件,添加本机的IP和主机名。
下载Oracle安装包: 从Oracle官方网站下载适用于Linux的Oracle 11g或12c安装包,并上传到服务器。
解压安装包:
unzip /path/to/oracle11g.zip -d /u01/app/oracle/product/11.2.0/dbhome_1
配置系统参数:
编辑 /etc/sysctl.conf
文件,增加或修改以下参数:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 1073741824
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
使配置生效:
sudo sysctl -p
修改用户限制文件:
编辑 /etc/security/limits.conf
文件,添加以下内容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
编辑 /etc/pam.d/login
文件,添加以下内容:
session required pam_limits.so
编辑 /etc/profile
文件,添加以下内容:
if [ "$USER" = "oracle" ]; then
ulimit -u 16384 -n 65536
fi
使配置生效:
source /etc/profile
创建安装目录:
sudo mkdir -p /u01/app/oracle/product/11.2.0/dbhome_1
sudo chown -R oracle:oinstall /u01/app/oracle
运行安装程序: 切换到Oracle用户,进入安装目录,运行安装程序:
sudo su - oracle
cd /u01/app/oracle/product/11.2.0/dbhome_1
./runInstaller
按照安装程序的提示进行操作,选择适当的选项并提供必要的配置信息。
配置监听器:
编辑 $ORACLE_HOME/network/admin/listener.ora
文件,添加监听器配置。
创建数据库实例:
使用 dbca
工具创建数据库实例:
sudo su - oracle
cd /u01/app/oracle/product/11.2.0/dbhome_1/bin
./dbca -silent -createDatabase -templateName General_Purpose.dbc -gdbname orcl -sid orcl -responseFile NO_VALUE -characterSet AL32UTF8
启动并验证安装:
sudo systemctl start oracle
使用SQLPlus等工具连接到Oracle数据库,执行一些简单的SQL语句来验证数据库安装是否成功。
如果在安装过程中遇到任何问题,请参考Oracle官方文档或相关在线资源以获取更多帮助。