当前位置:首页 > 问答 > 正文

Oracle安装 RHEL7.9环境下部署Oracle 19C的详细步骤

Oracle安装 | RHEL7.9环境下部署Oracle 19C的详细步骤

"老张,咱们新项目要用Oracle 19C,你这两天能在测试环境的RHEL7.9上先搭一套吗?" 产品经理拍了拍我的肩膀,我点点头,心里盘算着又要和Oracle的安装向导"斗智斗勇"了,如果你也和我一样,正在为在Red Hat Enterprise Linux 7.9上安装Oracle 19C发愁,那这篇手把手的教程就是为你准备的。

准备工作:别急着点"下一步"

1 系统要求检查

首先得确认你的RHEL7.9满足Oracle 19C的基本要求:

  • 内存至少4GB(建议8GB以上)
  • 交换空间:内存1.5-2倍(16GB内存以上可适当减少)
  • 磁盘空间:安装目录至少6.5GB,数据文件另算
  • 系统架构:x86-64

用这些命令快速检查:

# 查看内存
free -h
# 查看交换空间
swapon --show
# 查看磁盘空间
df -h

2 安装必要依赖包

Oracle就像个挑剔的客人,少一个依赖包都可能闹脾气,运行以下命令安装必备软件包:

yum install -y binutils \
compat-libcap1 \
compat-libstdc++-33 \
gcc \
gcc-c++ \
glibc \
glibc-devel \
ksh \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
libxcb \
libX11 \
libXau \
libXi \
libXtst \
libXrender \
libXrender-devel \
make \
nfs-utils \
net-tools \
smartmontools \
sysstat \
unzip \
vim \
xorg-x11-utils \
xorg-x11-xauth \
zip

系统配置:给Oracle铺好红毯

1 内核参数调整

编辑/etc/sysctl.conf文件,加入以下内容:

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
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让配置生效。

2 用户和组配置

Oracle不喜欢用root身份运行,我们需要创建专门的用户和组:

groupadd -g 54321 oinstall
groupadd -g 54322 dba
groupadd -g 54323 oper
useradd -u 54321 -g oinstall -G dba,oper oracle
echo "oracle123" | passwd oracle --stdin

3 目录创建和权限设置

mkdir -p /u01/app/oracle/product/19.3.0/dbhome_1
mkdir -p /u02/oradata
chown -R oracle:oinstall /u01 /u02
chmod -R 775 /u01 /u02

4 环境变量配置

切换到oracle用户,编辑~/.bash_profile

su - oracle
vim ~/.bash_profile
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

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

Oracle安装 RHEL7.9环境下部署Oracle 19C的详细步骤

正式安装:与Oracle安装向导的"友好交流"

1 上传安装包并解压

将Oracle 19C的安装包上传到服务器,通常是一个ZIP文件,假设我们放在/tmp目录:

cd /tmp
unzip LINUX.X64_193000_db_home.zip -d $ORACLE_HOME

2 运行安装程序

cd $ORACLE_HOME
./runInstaller

这时候会弹出图形界面,如果遇到无法显示图形的问题,可以尝试用X11转发或者安装vncserver。

3 图形界面安装步骤

  1. 配置选项:选择"仅设置软件"(我们稍后手动创建数据库)
  2. 安装类型:选择"单实例数据库安装"
  3. 产品语言:根据需求选择,建议至少保留英文和中文
  4. 数据库版本:选择"企业版"
  5. 安装位置:确认ORACLE_BASE和ORACLE_HOME路径是否正确
  6. 先决条件检查:如果前面步骤都做对了,这里应该都是通过的确认信息无误后点击"安装"

4 执行配置脚本

安装到最后会提示需要用root权限执行两个脚本:

/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/19.3.0/dbhome_1/root.sh

新开一个终端,切换到root用户执行这两个脚本。

创建数据库:给Oracle安个家

1 使用DBCA创建数据库

回到oracle用户,运行数据库配置助手:

dbca -silent -createDatabase \
-templateName General_Purpose.dbc \
-gdbname orcl -sid orcl -responseFile NO_VALUE \
-characterSet AL32UTF8 \
-sysPassword oracle123 \
-systemPassword oracle123 \
-createAsContainerDatabase false \
-totalMemory 2048 \
-storageType FS \
-datafileDestination /u02/oradata \
-recoveryAreaDestination /u02/fra \
-enableArchive true \
-redoLogFileSize 200 \

这个命令会创建一个名为orcl的数据库,SID也是orcl,字符集是AL32UTF8,系统用户密码都是oracle123。

Oracle安装 RHEL7.9环境下部署Oracle 19C的详细步骤

2 验证数据库状态

安装完成后,验证数据库是否正常运行:

sqlplus / as sysdba
SQL> SELECT status FROM v$instance;

应该返回"OPEN"状态。

常见问题处理:遇到错误别慌张

1 ORA-12514: TNS监听程序错误

如果连接时遇到这个错误,检查监听器配置:

lsnrctl status

如果监听器没启动,执行:

lsnrctl start

2 内存不足问题

如果安装过程中出现内存不足的警告,可以创建swap文件:

dd if=/dev/zero of=/swapfile bs=1M count=4096
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile

3 图形界面无法显示

如果无法显示图形界面,可以尝试安装vncserver:

Oracle安装 RHEL7.9环境下部署Oracle 19C的详细步骤

yum install -y tigervnc-server
vncserver

然后配置DISPLAY环境变量:

export DISPLAY=:1

收尾工作:安全加固和基础配置

1 修改默认密码

sqlplus / as sysdba
SQL> ALTER USER sys IDENTIFIED BY 新密码;
SQL> ALTER USER system IDENTIFIED BY 新密码;

2 配置防火墙

firewall-cmd --permanent --add-port=1521/tcp
firewall-cmd --reload

3 设置开机自启

创建服务文件/etc/systemd/system/oracle-rdbms.service

[Unit]
Description=Oracle RDBMS
After=syslog.target network.target
[Service]
Type=forking
Environment=ORACLE_HOME=/u01/app/oracle/product/19.3.0/dbhome_1
Environment=ORACLE_SID=orcl
ExecStart=$ORACLE_HOME/bin/dbstart $ORACLE_HOME
ExecStop=$ORACLE_HOME/bin/dbshut $ORACLE_HOME
User=oracle
Group=oinstall
[Install]
WantedBy=multi-user.target

然后启用服务:

systemctl daemon-reload
systemctl enable oracle-rdbms
systemctl start oracle-rdbms

写在最后

"老张,Oracle装好了吗?"产品经理又来了。"刚弄完,正在做最后的测试。"我回答道,其实安装Oracle就像组装一台精密仪器,每个步骤都不能马虎,按照上面的流程走下来,你应该能在RHEL7.9上顺利部署Oracle 19C了,如果遇到问题,别急着重装,先查日志(通常在$ORACLE_HOME/cfgtoollogs下),大多数错误都有解决方案。

好的开始是成功的一半,规范的安装能为后续运维省去很多麻烦,你可以开始享受Oracle带来的强大功能了!

发表评论