当前位置:首页 > 技术 > 正文内容

Debian 10 上自动化部署 Oracle 19C 数据库指南

访客 技术 2026年6月6日 1

前言

本文介绍一种自动化部署方案,演示如何在 Debian 10 系统上通过脚本一键安装 Oracle 19C 单机版数据库,整个过程无需人工干预。

⭐️ 脚本下载地址:Shell脚本安装Oracle数据库

安装准备

  • 1、完成操作系统安装,建议配置图形界面
  • 2、确保网络连接正常
  • 3、准备安装介质(基础包和补丁包)
  • 4、上传自动化安装脚本:OracleShellInstall

环境信息

# 系统版本
root@debian10:/soft# cat /etc/os-release 
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

# 网络配置
root@debian10:/soft# ip a
2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:0c:29:97:b7:ce brd ff:ff:ff:ff:ff:ff
    inet 192.168.6.142/24 brd 192.168.6.255 scope global dynamic ens192
       valid_lft 80724sec preferred_lft 80724sec
    inet6 fe80::20c:29ff:fe97:b7ce/64 scope link 
       valid_lft forever preferred_lft forever

# 外网连通性测试
root@debian10:/soft# ping www.baidu.com
PING www.baidu.com (180.101.50.242) 56(84) bytes of data.
64 bytes from www.baidu.com (180.101.50.242): icmp_seq=1 ttl=53 time=4.83 ms
64 bytes from www.baidu.com (180.101.50.242): icmp_seq=2 ttl=53 time=5.21 ms
64 bytes from www.baidu.com (180.101.50.242): icmp_seq=3 ttl=53 time=5.00 ms
64 bytes from www.baidu.com (180.101.50.242): icmp_seq=4 ttl=53 time=4.99 ms
64 bytes from www.baidu.com (180.101.50.242): icmp_seq=5 ttl=53 time=4.97 ms

# 安装包存放于 /soft 目录
root@debian10:/soft# ls -l
-rw-r--r-- 1 root root 3059705302 6月   9 11:00 LINUX.X64_193000_db_home.zip
-rwxr-xr-x 1 root root     211664 6月   7 17:24 OracleShellInstall

确认环境准备就绪后,可执行一键安装流程。

安装命令

采用标准生产环境参数执行安装(安装失败时可重复运行脚本):

# 根据脚本说明或 -h 命令提示,配置安装参数,在 /soft 目录下执行:
./OracleShellInstall -lf ens192 `# 本地IP接口名`\
-n debian10 `# 主机名`\
-op oracle `# oracle密码`\
-d /u01 `# 软件基础目录`\
-ord /oradata `# 数据目录`\
-o lucifer `# 数据库名`\
-dp oracle `# sys/system密码`\
-ds AL32UTF8 `# 数据库字符集`\
-ns AL16UTF16 `# 国家字符集`\
-redo 100 `# redo日志大小`\
-opd Y `# 优化数据库`

安装过程

   ███████                             ██          ████████ ██               ██  ██ ██                    ██              ██  ██
  ██░░░░░██                           ░██         ██░░░░░░ ░██              ░██ ░██░██                   ░██             ░██ ░██
 ██     ░░██ ██████  ██████    █████  ░██  █████ ░██       ░██       █████  ░██ ░██░██ ███████   ██████ ██████  ██████   ░██ ░██
░██      ░██░░██░░█ ░░░░░░██  ██░░░██ ░██ ██░░░██░█████████░██████  ██░░░██ ░██ ░██░██░░██░░░██ ██░░░░ ░░░██░  ░░░░░░██  ░██ ░██
░██      ░██ ░██ ░   ███████ ░██  ░░  ░██░███████░░░░░░░░██░██░░░██░███████ ░██ ░██░██ ░██  ░██░░█████   ░██    ███████  ░██ ░██
░░██     ██  ░██    ██░░░░██ ░██   ██ ░██░██░░░░        ░██░██  ░██░██░░░░  ░██ ░██░██ ░██  ░██ ░░░░░██  ░██   ██░░░░██  ░██ ░██
 ░░███████  ░███   ░░████████░░█████  ███░░██████ ████████ ░██  ░██░░██████ ███ ███░██ ███  ░██ ██████   ░░██ ░░████████ ███ ███
  ░░░░░░░   ░░░     ░░░░░░░░  ░░░░░  ░░░  ░░░░░░ ░░░░░░░░  ░░   ░░  ░░░░░░ ░░░ ░░░ ░░ ░░░   ░░ ░░░░░░     ░░   ░░░░░░░░ ░░░ ░░░


注意:此脚本仅用于在全新服务器上部署数据库,严禁在已有数据库的服务器上运行,以免导致数据丢失或损坏,造成不可挽回的损失!!!                      

请选择安装模式 [单机(si)/单机ASM(sa)/集群(rac)] : si

数据库安装模式: single

请选择数据库版本 [11/12/19/21] : 19

数据库版本:     19

!!! 免责声明:当前操作系统版本 [ Debian GNU/Linux 10 (buster) ] 不在 Oracle 官方支持列表,本脚本仅负责安装,请确认是否继续安装 (Y/N): [Y]

OracleShellInstall 开始安装,详细安装过程可查看日志: tail -2000f /soft/print_shell_install_20240609110350.log                                          
正在获取操作系统信息......已完成 (耗时: 1 秒)
正在配置软件源......已完成 (耗时: 7 秒)
正在安装依赖组件......已完成 (耗时: 128 秒)
正在配置 Swap......已完成 (耗时: 69 秒)
正在关闭防火墙......已完成 (耗时: 1 秒)
正在配置主机名和 /etc/hosts......已完成 (耗时: 1 秒)
正在修改密码策略......已完成 (耗时: 1 秒)
正在创建用户和组......已完成 (耗时: 1 秒)
正在创建安装目录......已完成 (耗时: 1 秒)
正在配置透明大页 && NUMA && 磁盘 IO 调度器......已完成 (耗时: 7 秒)
正在配置系统参数 sysctl......已完成 (耗时: 1 秒)
正在配置 RemoveIPC......已完成 (耗时: 1 秒)
正在配置用户限制 limit......已完成 (耗时: 1 秒)
正在配置 shm 目录......已完成 (耗时: 1 秒)
正在配置用户环境变量......已完成 (耗时: 1 秒)
正在解压 Oracle 安装介质......已完成 (耗时: 156 秒)
正在安装 Oracle 软件及补丁......已完成 (耗时: 105 秒)
正在创建监听器......已完成 (耗时: 8 秒)
正在创建数据库......已完成 (耗时: 672 秒)
正在优化数据库......已完成 (耗时: 26 秒)

恭喜!Oracle 一键安装完成 (耗时: 1189 秒),是否立即重启主机:[Y/N] Y

正在重启当前节点......

连接测试

检查系统版本:

[root@debian10:/root]# cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

检查 Oracle 版本及补丁信息:

[oracle@debian10:/home/oracle]$ sqlplus -v

SQL*Plus: Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

[oracle@debian10:/home/oracle]$ opatch lspatches
29585399;OCW RELEASE UPDATE 19.3.0.0.0 (29585399)
29517242;Database Release Update : 19.3.0.0.190416 (29517242)

OPatch succeeded.

检查监听器状态:

[oracle@debian10:/home/oracle]$ lsnrctl stat

LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 09-JUN-2024 12:11:05

Copyright (c) 1991, 2019, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=debian10)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 19.0.0.0.0 - Production
Start Date                09-JUN-2024 12:10:03
Uptime                    0 days 0 hr. 1 min. 2 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /u01/app/oracle/product/19.3.0/db/network/admin/listener.ora
Listener Log File         /u01/app/oracle/diag/tnslsnr/debian10/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=debian10)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Services Summary...
Service "lucifer" has 1 instance(s).
  Instance "lucifer", status READY, has 1 handler(s) for this service...
Service "luciferXDB" has 1 instance(s).
  Instance "lucifer", status READY, has 1 handler(s) for this service...
The command completed successfully

测试数据库连接:

[oracle@debian10:/home/oracle]$ sas

SQL*Plus: Release 19.0.0.0.0 - Production on Sun Jun 9 12:11:21 2024
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle.  All rights reserved.


Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

sys@LUCIFER 2024-06-09 12:11:21> show parameter name

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
cdb_cluster_name                     string
cell_offloadgroup_name               string
db_file_name_convert                 string
db_name                              string      lucifer
db_unique_name                       string      lucifer
global_names                         boolean     FALSE
instance_name                        string      lucifer
lock_name_space                      string
log_file_name_convert                string
pdb_file_name_convert                string
processor_group_name                 string
service_names                        string      lucifer

数据库连接验证成功。

标签: Debian

相关文章

Linux crontab 详解

1) crontab 是什么cron 是 Linux 的定时任务守护进程;crontab 是用来编辑/查看“按时间周期执行命令”的表(cron table)。常见两类:用户 crontab:每个用户一份(crontab -e 编辑)系统级 crontab / cron.d:可指定执行用户(/etc/crontab、/etc/cron.d/*)2) crontab 时间...

富文本里可以允许的 HTML 属性

一、所有标签默认允许的安全属性(极少)class        (可选)id           (通常建议禁用)title️ 注意:id 容易被滥用做锚点注入,很多系统直接禁用class 允许的话最好只允许固定前缀(如 editor-*)二、a 标签允许属性<a href="" t...

Mac 安装 Node.js 指南

方法一:通过官网安装包(最简单,适合初学者)如果你只是想快速安装并开始使用,这是最直接的方法。访问 Node.js 官网。页面会显示两个版本:LTS (Recommended For Most Users):长期支持版,最稳定。建议选这个。Current:最新特性版,包含最新功能但可能不够稳定。下载 .pkg 安装包并运行。按照安装向导点击“下一步”即可完成。方法二:使用 Homebrew 安装(...

Dom\HTML_NO_DEFAULT_NS 的副作用:自动加闭合标签

在使用Dom\HTMLDocument时,Dom\HTML_NO_DEFAULT_NS 将禁止在解析过程中设置元素的命名空间, 此设置是为了与DOMDocument向后兼容而存在的。当使用它时,已知的一个副作用就是:自动加闭合标签例如 </img> 为什么会这样?当你使用:Dom\HTML_NO_DEFAULT_NS文档会变成 无命名空间模式,此时内部更接近 XML...

Laravel 事件和监听器创建

在 Laravel 中,使用 Artisan 命令创建 Events(事件) 和 Listeners(监听器) 是非常高效的。你可以通过以下几种方式来实现:1. 手动创建单个 Event如果你只想创建一个事件类,可以使用 make:event 命令:Bashphp artisan make:event UserRegistered执行后,文件将生成在 app/Even...

自定义域名解析神器 dnsmasq

什么是 dnsmasq?dnsmasq 是一个轻量级、功能强大的网络服务工具,专为小型和中等规模网络设计。它是一个综合的网络基础设施解决方案[1]。dnsmasq 能做什么?功能说明应用场景DNS 转发与缓存将 DNS 查询转发到上游服务器(ISP、Google DNS 等),并在本地缓存结果加快 DNS 查询速度,减少外部 DNS 流量本地 DNS解析本地网络设备的主机名,无需编辑&n...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。