CentOS7安装Oracle数据库

一、关闭防火墙

systemctl stop firewalld

systemctl disable firewalld

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

setenforce 0

二、修改主机名

hostnamectl set-hostname oracle

echo "127.0.0.1 oracle" >> /etc/hosts

三、安装Oracle所有依赖

yum install -y binutils gcc gcc-c++ glibc glibc-devel libaio libaio-devel libstdc++ libstdc++-devel make sysstat elfutils-libelf elfutils-libelf-devel ksh compat-libcap1 compat-libstdc++-33 libnsl libnsl-devel unixODBC unixODBC-devel net-tools

报错:Cannot find a valid baseurl for repo: base/7/x86_64

CentOS7源过期

修复:# 进入源目录

cd /etc/yum.repos.d/

备份旧源

mkdir backup

mv *.repo backup/

下载阿里云可用的 CentOS 7 最新源

curl -o CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

清理缓存

yum clean all

yum makecache

重新安装依赖,成功。

四、创建用户和组

groupadd oinstall

groupadd dba

useradd -g oinstall -G dba oracle

passwd oracle # 设置密码:q1w2e3@123!!!!!

五、配置内核参数

vi /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 = 1048586

生效

sysctl -p

​​​​​​​六、配置用户限制

vi /etc/security/limits.conf

添加:

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

oracle soft stack 10240

七、创建安装目录

mkdir -p /opt/oracle/product/19c/dbhome_1

mkdir -p /opt/oracle/oradata

mkdir -p /opt/oraInventory

chown -R oracle:oinstall /opt/oracle

chown -R oracle:oinstall /opt/oraInventory

chmod -R 775 /opt/oracle

八、配置Oracle环境变量

su - oracle

vi .bash_profile

添加:

export ORACLE_BASE=/opt/oracle

export ORACLE_HOME=$ORACLE_BASE/product/19c/dbhome_1

export ORACLE_SID=orcl

export PATH=ORACLE_HOME/bin:PATH

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

生效:

source .bash_profile

Exit

九、下载安装包

LINUX.X64_193000_db_home.zip 上传到/opt/oracle/product/19c/dbhome_1

cd /opt/oracle/product/19c/dbhome_1

wget -c https://download.oracle.com/otn/linux/oracle19c/190000/LINUX.X64_193000_db_home.zip

授权:

chown -R oracle:oinstall /opt/oracle/product/19c/dbhome_1

十、安装Oracle 19c

1、切换oracle用户

必须切换

为什么不能用 root 装?

  • Oracle 强制规定 :只能用 oracle 用户安装
  • 用 root 直接装会 直接报错、安装失败、权限全乱

后期数据库无法启动、无法使用

su - oracle

cd /opt/oracle/product/19c/dbhome_1

2、解压

unzip LINUX.X64_193000_db_home.zip

3、静默安装(无图形界面)

./runInstaller -silent -ignorePrereqFailure \

oracle.install.option=INSTALL_DB_SWONLY \

ORACLE_HOSTNAME=oracle \

UNIX_GROUP_NAME=oinstall \

INVENTORY_LOCATION=/opt/oraInventory \

SELECTED_LANGUAGES=en,zh_CN \ ORACLE_HOME=/opt/oracle/product/19c/dbhome_1 \

ORACLE_BASE=/opt/oracle \

oracle.install.db.InstallEdition=EE \

oracle.install.db.DBA_GROUP=dba \

oracle.install.db.OPER_GROUP=dba \

SECURITY_UPDATES_VIA_MYORACLESUPPORT=false \

DECLINE_SECURITY_UPDATES=true

4、退出oracle用户

exit

5、执行脚本

/opt/oraInventory/orainstRoot.sh

/opt/oracle/product/19c/dbhome_1/root.sh

6、创建数据库实例

su - oracle

dbca -silent -createDatabase \

-templateName General_Purpose.dbc \

-gdbname orcl \

-sid orcl \

-SysPassword oracle123 \

-SystemPassword oracle123 \

-DatafileDestination /opt/oracle/oradata \

-RedoLogFileSize 500 \

-StorageType FS \

-CharacterSet AL32UTF8 \

-NationalCharacterSet AL16UTF16

7、启动监听

lsnrctl start

lsnrctl status

8、登录数据库测试

sqlplus / as sysdba

Startup

看到:Database opened.

安装完成

相关推荐
云和恩墨4 小时前
数据库一体机简史:从ODA到zData X,命名之中的玄机
数据库·vr
数据库小学妹5 小时前
KES是什么?国产数据库技术架构、核心能力与选型实战解析
数据库·经验分享·架构·国产数据库·数据库选型·信创数据库
Database_Cool_6 小时前
向量检索加速首选:阿里云 Tair 内置向量能力毫秒级召回
数据库·阿里云
强健的石头6 小时前
django文件对象是什么?
数据库·django·sqlite
ClouGence7 小时前
保障公共安全,一线治安机构实时数据应用与实践
数据库·mysql·postgresql
烟漠河洛7 小时前
线上事故复盘:Redis幂等性设计边界没覆盖跨状态请求,订单状态机直接崩了
数据库·redis·缓存
Minxinbb8 小时前
TDSQL for MySQL 服务器重启操作
数据库·mysql·dba
SelectDB8 小时前
Doris 实战:用 Colocate Join 消除 Shuffle,AB 指标计算性能提升 145 倍 🚀
数据库·性能优化·ab测试
PawSQL8 小时前
PawSQL 技术月报 | 2026年6月
数据库·sql·tdsql·pawsql·sql审核
SelectDB8 小时前
Apache Doris 在 AgentLogsBench 中领先,支撑 Agent 可观测性生产负载
运维·数据库·agent