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.

安装完成

相关推荐
字节跳动开源2 小时前
Viking AI 搜索 CLI 正式发布:会说话,就能做搜索推荐
数据库·人工智能·开源
TechWJ3 小时前
数据库在公司内网,出差路上想查数据怎么办?
服务器·数据库·mariadb
我是一颗柠檬3 小时前
【MySQL全面教学】MySQL事务与ACID Day9(2026年)
数据库·后端·mysql
橙子圆1233 小时前
Redis知识9之集群
数据库·redis·缓存
BlackHeart12033 小时前
【SQL】Oracle中序列(Sequence)作为默认值引发的ORA-00979
数据库·sql·oracle
一点事4 小时前
docker:安装oracle 19c
docker·oracle·容器
bug菌4 小时前
【SpringBoot 3.x 第254节】夯爆了,数据库访问性能优化实战详解!
数据库·spring boot·后端
xxl大卡4 小时前
MySQL的执行流程
数据库·mysql
chicheese4 小时前
MySQL优化实践:选错JOIN 驱动表,性能相差几十倍
数据库·mysql
無限進步D4 小时前
MySQL 单行函数
数据库·mysql