在CentOS操作系统上安装和配置Oracle数据库是一项复杂的任务,涉及到多个步骤和细节。本文将详细解析在CentOS环境下配置与创建Oracle数据库的步骤,帮助读者顺利完成这一过程。

一、准备工作

1. 系统要求检查

在开始安装之前,首先需要确保系统满足Oracle数据库的最低要求:

  • 操作系统版本:建议使用CentOS 7或更高版本。
  • 硬件要求:至少4GB内存,50GB硬盘空间。
  • 网络设置:确保网络连接正常,防火墙和SELinux配置适当。

2. 安装必要的工具和依赖包

使用yum命令安装必要的工具和依赖包:

sudo yum update -y
sudo yum install -y oracle-database-preinstall-19c

3. 配置主机名和网络

编辑/etc/hostname文件设置主机名,并重启系统使其生效:

sudo hostnamectl set-hostname yourhostname

配置/etc/hosts文件,添加主机名和IP地址映射:

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
yourip      yourhostname

二、创建用户和目录

1. 创建Oracle用户和用户组

创建专门用于运行Oracle数据库的用户和用户组:

sudo groupadd oinstall
sudo groupadd dba
sudo useradd -g oinstall -G dba oracle
sudo passwd oracle

2. 创建安装目录并设置权限

创建Oracle安装目录,并设置适当的权限:

sudo mkdir -p /u01/app/oracle/product/19c/dbhome_1
sudo chown -R oracle:oinstall /u01
sudo chmod -R 775 /u01

三、关闭SELinux和Firewalld

为了简化安装过程,建议关闭SELinux和Firewalld:

sudo setenforce 0
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
sudo systemctl stop firewalld
sudo systemctl disable firewalld

四、调整系统内核参数

编辑/etc/sysctl.conf文件,添加以下内核参数:

fs.file-max = 6815744
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命令使配置生效。

五、设置用户资源限制

编辑/etc/security/limits.conf文件,添加以下内容:

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

编辑/etc/pam.d/login文件,添加以下行:

session required pam_limits.so

六、安装Oracle数据库

1. 下载Oracle数据库安装包

从Oracle官方网站下载适合CentOS系统的Oracle数据库安装包,并上传到服务器。

2. 解压安装包

解压下载的安装包到指定目录:

tar -xvf oracle-database-19c-ee-x86_64.tar.gz -C /u01/app/oracle

3. 配置环境变量

编辑~/.bash_profile文件,添加以下内容:

export ORACLE_HOME=/u01/app/oracle/product/19c/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=orcl

执行source ~/.bash_profile使配置生效。

4. 运行安装脚本

切换到oracle用户,运行安装脚本:

su - oracle
cd /u01/app/oracle/database
./runInstaller

按照安装向导的提示进行操作,选择安装类型、指定安装路径等。

七、配置Oracle数据库

1. 创建数据库

使用Database Configuration Assistant(DBCA)创建数据库:

dbca

选择创建新数据库,指定数据库名称、文件存储位置、字符集等。

2. 配置监听器

使用lsnrctl工具配置和启动监听器:

lsnrctl start
lsnrctl status

确保在listener.ora文件中配置了正确的数据库服务名。

3. 配置环境变量

根据系统需求,设置以下环境变量:

export ORACLE_HOME=/u01/app/oracle/product/19c/dbhome_1
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH

八、启动数据库

使用sqlplus工具登录数据库,并启动数据库实例:

sqlplus / as sysdba
startup

九、常见问题与解决方案

1. ORA-01102错误

如果遇到ORA-01102: cannot mount database in EXCLUSIVE mode错误,执行以下命令:

sqlplus / as sysdba
shutdown immediate
startup

2. 环境变量未生效

确保在~/.bash_profile文件中正确配置了环境变量,并执行source ~/.bash_profile命令。

十、总结

在CentOS环境下安装和配置Oracle数据库是一个涉及多个步骤的复杂过程。通过本文的详细解析,读者可以按照步骤逐步完成安装和配置,确保数据库的顺利运行。希望本文能为您的数据库安装工作提供有力的参考和帮助。