温馨提示×

linux oracle怎么部署

小樊
45
2026-09-07 12:32:43
栏目: 云计算

下面给你一个**在 Linux 上部署 Oracle 数据库(以 Oracle 19c 为例,最常见)**的实用流程,适合新手照着做。


一、环境准备

1. 系统要求

  • Linux:Oracle Linux / RHEL / CentOS 7/8(推荐 Oracle Linux)
  • 内存:≥ 4GB(生产建议 8GB+)
  • 磁盘:≥ 20GB(数据盘另算)
  • SWAP:内存 ≤ 8G 时,SWAP = 内存 × 2

2. 关闭防火墙和 SELinux(测试环境)

systemctl stop firewalld
systemctl disable firewalld

setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

二、创建 Oracle 用户和组

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

三、修改系统参数

1. 内核参数

vi /etc/sysctl.conf

添加:

fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmax = 4294967295
kernel.shmall = 1073741824
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_max = 4194304
net.core.wmem_max = 1048576

执行:

sysctl -p

2. 用户限制

vi /etc/security/limits.conf

添加:

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

四、安装依赖包

yum install -y binutils compat-libcap1 compat-libstdc++-33 \
gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel \
libgcc libstdc++ libstdc++-devel make sysstat unixODBC

五、下载并安装 Oracle

1. 创建目录

mkdir -p /u01/app/oracle
mkdir -p /u01/app/oraInventory
chown -R oracle:oinstall /u01
chmod -R 775 /u01

2. 上传 Oracle 安装包

例如:

LINUX.X64_193000_db_home.zip

解压:

su - oracle
cd /u01/app/oracle
unzip LINUX.X64_193000_db_home.zip

六、安装 Oracle 软件

cd /u01/app/oracle
./runInstaller
  • 选择 “仅安装软件”
  • 安装完成后执行:
/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/root.sh

(用 root 执行)


七、创建数据库

su - oracle
dbca

或静默创建:

dbca -silent -createDatabase \
-templateName General_Purpose.dbc \
-gdbname orcl -sid orcl \
-createAsContainerDatabase false \
-characterSet AL32UTF8 \
-memoryPercentage 40 \
-emConfiguration NONE

八、配置环境变量

su - oracle
vi ~/.bash_profile

添加:

export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH
source ~/.bash_profile

九、启动数据库

sqlplus / as sysdba
startup

监听:

lsnrctl start

十、验证

sqlplus system/密码@localhost:1521/orcl

常见问题

  • 缺少 lib 包 → 安装 compat-libstdc++
  • 内存不足 → 增大 SWAP
  • 监听起不来 → 检查 listener.ora

如果你告诉我:

  • 用的是 哪种 Linux
  • Oracle 版本
  • 学习 / 测试 / 生产

我可以给你更精确的部署方案(含 Docker 方式)。

0