​​​​Linux Shell 实现一键部署Oracle21 rpm包方式

news/2024/11/19 19:27:06/

 

oracle前言

Oracle开发的关系数据库产品因性能卓越而闻名,Oracle数据库产品为财富排行榜上的前1000家公司所采用,许多大型网站也选用了Oracle系统,是世界最好的数据库产品。此外,Oracle公司还开发其他应用程序和软件。同时,Oracle在英语里还是“神谕”的意思,意为“替神说话的”,寓指Oracle公司的发展目标和决心地位。

以下环境适用于Redhat 8 系列及复刻Redhat 8系列系统

download Oracle

oracle 21c 需要oralce 账号哦oracle 百度云下载地址文档
downloaddownload参考

Linux 各系统下载使用参考

Red HatRocky Linux Oracle Linux

AlmaLinux 

ubuntususelinuxesxiRHEL标准安装系统安装参考YUM参考

MobaXterm 远程连接工具

Red Hat Enterprise 9.0 文档Kickstart 生成器
downloaddownloaddownloaddownloaddownloaddownloaddownload参考参考配置参考download参考Kickstart 
版本兼容性

oracle 一键自动化部署

  • root模式下执行安装,预计耗时50分钟
  • Linux系统创建的oracle用户名密码oracle/oracle@123
  • oracle 数据库登录密码 Ciasm123
  • /u01/app/oracle 数据库安装目录
  •  ~/.bash_profile 环境变量信息,目录
  • oracle_SID: orcl #数据库名称
  • /opt/oracle/product/21c/dbhome_1 #oracle解压安装目录
  • /u01/app/oraInventory 指定存放库存文件的位置
  • /opt/oracle/product/21c/dbhome_1/runInstaller --help 获取安装参数的支持,版本不同参数不同
  • root下切换oracle用户不需要输入密码,因为root是老大
  • 监听端口 1521,监听文件位置/etc/sysconfig/oracledb_orcl-21c.conf
  • /etc/init.d/oracledb_ORCLCDB-21c #oracle 配置文件,可更改名称和em,字符集
  • 重启验证是否开机自启动oracle,开机稍微等待3分钟左右oralce 监听,库,em都会启动
  • netstat -lntp 查看端口是否全部启动,1521,5500
  • em https管理数据库https://YOU_IP:5500/em {用户名密码sys/Ciasm123}
  • oracle_database 下载地址,以下是我自己内网的下载,官网下载需要oralce 账号,文档前有官方和百度云地址更改此处即可 http://192.168.12.252:9999/ISO/oracle/oracle-database-ee-21c-1.0-1.ol8.x86_64.rpm
  • HFSHTTP 文件服务器,拉取发布软件到程序即可 dowload
vim /oracle21C_install_rpm.sh
#!/bin/bash
# -*- coding: utf-8 -*-
# Author: CIASM
# update 2023/05/29
# Install oracle using rpmORACLE_ORACLEHOME_CHECK=/opt/oracleinstall_oracle (){if [ ! -d $ORACLE_ORACLEHOME_CHECK ];thenif [ $? -eq 0 ];then#User name and password for logging in to the oracle database in Linux
oracle_user=oracle
oracle_user_password=oracle@123echo "Create user and groups for Oracle Database service"
i=54321; for group in oinstall dba oper backupdba dgdba kmdba asmdba asmoper asmadmin racdba; do
groupadd -g $i $group; i=$(expr $i + 1)
doneuseradd -u 54321 -g oinstall -G dba,oper,backupdba,dgdba,kmdba,asmdba,racdba -d /opt/oracle $oracle_userecho "Add oracle users to users and user groups"
echo "$oracle_user_password" | passwd --stdin $oracle_userecho "create oracle directory"
mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01/app
chmod -R 755 /u01echo "Dependent environment installation"
yum install -y https://yum.oracle.com/repo/OracleLinux/OL8/appstream/x86_64/getPackage/oracle-database-preinstall-21c-1.0-1.el8.x86_64.rpmecho "Firewall port development"
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
firewall-cmd --zone=public --add-port=80/tcp --add-port=443/tcp --add-port=1521/tcp --add-port=5500/tcp --permanent && firewall-cmd --reloadecho "install oracle"
yum install -y http://192.168.11.252:9999/ISO/oracle/oracle-database-ee-21c-1.0-1.ol8.x86_64.rpm#download oracle and install oracle on the local yum
#yum localinstall /root/oracle-database-ee-21c-1.0-1.ol8.x86_64.rpm -yecho "create listening port for Listener"
cat >>/etc/sysconfig/oracledb_orcl-21c.conf<<EOF
# change default settings if you need
# listening port for Listener
LISTENER_PORT=1521# data location
ORACLE_DATA_LOCATION=/u01/app/oracle# EM_EXPRESS_PORT: Oracle EM Express listener
# listening port for Enterprise Manager
EM_EXPRESS_PORT=5500
EOFecho "create sample Database orcl"
sed -i 's#ORACLE_SID=ORCLCDB#ORACLE_SID=ORCL#' /etc/init.d/oracledb_ORCLCDB-21c
/etc/init.d/oracledb_ORCLCDB-21c configuresu - oracle << EOF
echo 'umask 022' >> ~/.bash_profile
echo 'export ORACLE_SID=ORCL' >> ~/.bash_profile
echo 'export ORACLE_BASE=/u01/app/oracle' >> ~/.bash_profile
echo 'export ORACLE_HOME=/opt/oracle/product/21c/dbhome_1' >> ~/.bash_profile
echo 'export PATH=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/oracle/product/21c/dbhome_1/bin' >> ~/.bash_profile
echo 'export CV_ASSUME_DISTID=RHEL8.0'  >> ~/.bash_profile
echo 'export ORA_INVENTORY=/u01/app/oraInventory' >> ~/.bash_profile
echo 'export LD_LIBRARY_PATH=/opt/oracle/product/21c/dbhome_1/lib:/usr/lib' >> ~/.bash_profile
echo 'export DISPLAY=":0.0"' >> ~/.bash_profile
source ~/.bash_profile 
EOFecho "create sys system scott password"
su - oracle << EOF
sqlplus / as sysdba
alter user system identified by Ciasm123;
alter user sys identified by Ciasm123;
alter user scott account Ciasm123; 
CREATE TRIGGER open_all_pdbs
AFTER STARTUP ON DATABASE
BEGIN
EXECUTE IMMEDIATE 'alter pluggable database all open';
END open_all_pdbs;
EOFecho "Set this parameter in root mode"
sed -i "s#ORCL:/opt/oracle/product/21c/dbhome_1:N#ORCL:/opt/oracle/product/21c/dbhome_1:Y#" /etc/oratabecho "oracle Boot script"
cat >>/usr/lib/systemd/system/ORCL@oracledb.service<<EOF
# this is an example, modify for free
[Unit]
Description=Oracle Database service
After=network.target[Service]
User=oracle
Type=forking
Environment=ORACLE_BASE=/u01/app/oracle
Environment=ORACLE_HOME=/opt/oracle/product/21c/dbhome_1
Environment=ORACLE_SID=ORCL
ExecStart=/opt/oracle/product/21c/dbhome_1/bin/dbstart /opt/oracle/product/21c/dbhome_1
ExecStart=/opt/oracle/product/21c/dbhome_1/dbstart /opt/oracle/product/21c/dbhome_1
Restart=always[Install]
WantedBy=multi-user.target
EOFecho "The startup setting is set after startup"
systemctl daemon-reload && systemctl enable ORCL@oracledbecho -e "\033[32mThe oralce Install Success...\033[0m" elseecho -e "\033[31mThe oracle Install Failed...\033[0m" exit 1fielseecho -e "\033[33mThe oracle Install already...\033[0m"fi
}main (){install_oracle
}main

 执行Oracle21c 一键安装,预计50分钟

  • sh /oracle21C_install_rpm.sh 2>&1 | tee /var/log/oracle_install.log #日志输出参考
sh /oracle21C_install_rpm.sh

 em 管理系统打开

  • https://(servers hostname or IP address):5500/em
  • sys/Ciasm123 em登录管理用户名密码

这是Enterprise Manager管理控制台

重启验证是否开机自启动oracle 数据库,监听,em

reboot netstat -lntp


http://www.ppmy.cn/news/103612.html

相关文章

深度学习笔记之循环神经网络(八)LSTM的轻量级变体——门控循环单元(GRU)

深度学习笔记之LSTM轻量级变体——门控循环单元[GRU] 引言回顾&#xff1a; LSTM \text{LSTM} LSTM的前馈计算过程 LSTM \text{LSTM} LSTM的问题 GRU \text{GRU} GRU的前馈计算过程 GRU \text{GRU} GRU的优势 引言 上一节介绍了从反向传播过程的角度认识 LSTM \text{LSTM} LST…

将文件base64解码后输出

Map taxPdf alService.getFile();//得到文件 String filestr String.valueOf(taxPdf.get("data")); if (taxPdf ! null) {BASE64Decoder decoder new BASE64Decoder();byte[] fileBytes decoder.decodeBuffer(filestr);HttpServletResponse response getRespons…

30分钟开发微信小程序并部署

30分钟开发微信小程序并部署 首先&#xff0c;今天我们会使用到腾讯为我们提供的云平台来协助我们小程序的开发和部署。 环境准备&#xff1a; 微信开发者账号&#xff08;自己在微信公众号平台注册一个账号&#xff09;&#xff1a;https://mp.weixin.qq.com/&#xff0c;同时…

[GUET-CTF2019]number_game[数独]

目录 题目 学到的知识点&#xff1a; 题目 在buu上看到了一道数独题&#xff0c;没见过&#xff0c;记录一下 下载附件&#xff0c;查壳&#xff0c;无壳&#xff0c;在IDA中打开&#xff0c;直接找到主函数 unsigned __int64 __fastcall main(int a1, char **a2, char **a3…

CH341的SPI接口编程说明

CH341的SPI接口特性&#xff1a; 1、提供3个片选信号&#xff0c;SCS0~SCS2&#xff1b; 2、SPI 默认工作模式0&#xff0c;不支持修改&#xff1b; 3、SPI Clock速率固定&#xff0c;小于2MHz&#xff1b; 4、支持MSB/LSB传输&#xff1b; 引脚序号功能说明15~17SCS0~SCS…

在网络安全领域,这些都是比较牛的中国黑客!

1994年前后&#xff0c;国内出现最早一批黑客&#xff0c;其中以龚蔚、天山等顶级黑客为代表&#xff1b;2000年左右&#xff0c;第二代黑客出现&#xff0c;他们的技术特点与前辈相仿&#xff0c;深入研究网络安全技术&#xff0c;有自己的理论和产品&#xff1b;而后第三代黑…

记录两个Windows和Mac上部署阿里Canal无法启动的神坑

目录 一、问题列表 二、解决方案 三、参考资料 四、配置详解 五、数据库相关操作 一、问题列表 1、问题一&#xff1a;点击 startup.bat 窗口出现后立马闪退的问题。 2、问题二&#xff1a;启动后日志文件报错&#xff1a; ERROR com.alibaba.otter.canal.deployer.Cana…

全球化企业应如何统筹规划财务共享中心?

中冶国际携手用友构建海外财务共享体系 中冶国际工程集团有限公司&#xff08;简称&#xff1a;中冶国际&#xff09;成立于2006年&#xff0c;是中国冶金科工股份有限公司&#xff08;简称&#xff1a;中国中冶&#xff09;的全资子公司&#xff0c;也是中国五矿集团和中国中…