暂无图片
暂无图片
16
暂无图片
暂无图片
暂无图片

20230704_一键安装Oracle11g/19C/21C_单机/RAC集群/standalone/PostgreSQL_工具分享_开放源码

原创 惠星星 2021-11-04
3914

1. 目标说明

本文档旨在帮助Oracle管理及维护人员标准、高效安装Oracle 11G/19C/21C 数据库, 实现单机/RAC集群/standalone/PostgreSQL一键安装。 软件下载: 说明: PostgreSQL建议使用OS: CentOS-7-x86_64-DVD-1810.iso(centos 7.6) Oracle建议使用OS:Oraclelinux7.5.iso 培训视频: 链接:https://pan.baidu.com/s/1lFCUBudw2gCZjq51XWZ0dg 提取码: |-- 1_一键安装数据库_OS配置及安装.mp4 |-- 2_一键安装数据库_Oracle single环境安装 |-- 3_一键安装数据库_standalone环境安装 |-- 4_一键安装数据库_Oracle RAC环境安装

2. 软件规划

序号 软件名称 软件版本 备注
1 Oracle Linux 7.5 64bit
2 Oracle Database 11.2.0.4
3 Oracle Database 19.3.0.0
4 Oracle Database 21.3.0.0

Oracle版本支持规划如下所示,
ae7d356b38a2512ef6ca205513966ca.png

3. 文件系统

3.1 单机环境目录规划

序号 目录 用途 建议值 管理方式 FS 类型
1 /boot 系统内核 500M 标准分区
2 /var 日志存放目录 10G LVM XFS
3 /u01 软件安装目录 80G LVM XFS
4 swap 交换分区 32G LVM XFS
5 / 根目录 剩余可用空间 LVM XFS
6 /oradata 数据文件 按业务需求 LVM XFS
7 /arch 归档日志 按业务需求 LVM XFS
8 /backup 备份目录 按业务需求 LVM XFS

注: 测试环境根据实际存储量调整以上目录大小,测试环境可以只安装OS不用创建其它目录,测试环境建议存储40G以上。

4. OS时区

时区选择东八区:Shanghai,Asia;

5. 上传安装文件

创建软件包目录并上传Oracle安装文件 [root@ora11g ~]# mkdir -p /soft [root@orcldb soft]# tree /soft /soft |-- LINUX.X64_193000_db_home.zip |-- LINUX.X64_193000_grid_home.zip |-- LINUX.X64_213000_db_home.zip |-- LINUX.X64_213000_grid_home.zip |-- p13390677_112040_Linux-x86-64_1of7.zip |-- p13390677_112040_Linux-x86-64_2of7.zip |-- p13390677_112040_Linux-x86-64_3of7.zip |-- x_onekey.sh `-- yum.iso 0 directories, 9 files [root@orcldb soft]#

4. 安装过程演示

4.1 single环境安装

[root@ora11g ~]# chmod a+x /soft/x_onekey.sh mv Oraclelinux7.5.iso yum.iso [root@ora11g ~]# sh x_onekey.sh -dt=oracle \ -op=install \ -ht=single `#type: single/rac/ha` \ -v=21C `# version: 11G/19C/21C` \ -i=192.168.1.115 `#Public ip` \ -n=orcl `# hostname: will aotu add "db" for single/ha,add "db1/db2"for rac` \ -dp=Enmo_1234 `# db password: os: oracle/grid db: SYS/SYSTEM/SYSMAN/DBSNMP ` \ -o=orcl `# oraclesid` \ -cdb=true `# createAsContainerDatabase: true/false` \ -pdbname=enmo \ -cs=ZHS16GBK `# characterset: ZHS16GBK/AL32UTF8 ` \ -ncs=AL16UTF16 `# NCHARACTERSET: AL16UTF16/UTF8 ` \ -yum=/soft/yum.iso `# yum location: /dev/cdrom or /soft/yum.iso`

4.2 standalone环境安装

[root@ora11g ~]# chmod a+x /soft/x_onekey.sh [root@ora11g ~]# sh x_onekey.sh -dt=oracle \ -op=install \ -ht=standalone `#type: single/rac/standalone` \ -v=21C `# version: 11G/19C/21C` \ -i=192.168.1.115 `#Public ip` \ -n=snyx `# hostname: will aotu add "db" for single/ha,add "db1/db2"for rac` \ -dp=Enmo_1234 `# db password: os: oracle/grid db: SYS/SYSTEM/SYSMAN/DBSNMP ` \ -o=orcl `# oraclesid` \ -cdb=true `# createAsContainerDatabase: true/false` \ -pdbname=pdb `# pdbname` \ -cs=ZHS16GBK `# characterset: ZHS16GBK/AL32UTF8 ` \ -ncs=AL16UTF16 `# NCHARACTERSET: AL16UTF16/UTF8 ` \ -yum=/soft/yum.iso `# yum location: /dev/cdrom or /soft/yum.iso` \ -or=NORMAL `# asm ocr redundancy: high/normal/external` \ -od=/dev/sdb,/dev/sdc,/dev/sdd `# asm ocr disk` \ -dr=EXTERNAL `# asm data redundancy: high/normal/external` \ -dd=/dev/sde `# asm data disk`

4.3 RAC环境安装

[root@ora11g ~]# chmod a+x /soft/x_onekey.sh [root@ora11g ~]# sh x_onekey.sh -dt=oracle \ -op=install \ -ht=rac `#type: single/rac/ha` \ -v=19C `# version: 11G/19C/21C` \ -i=192.168.1.115 `#Public ip` \ -n=snyx `# hostname: will aotu add "db" for single/ha,add "db1/db2"for rac` \ -rp=123456 `# root password` \ -dp=Enmo_1234 `# db password: os: oracle/grid db: SYS/SYSTEM/SYSMAN/DBSNMP ` \ -o=orcl `# oraclesid` \ -cdb=true `# createAsContainerDatabase: true/false` \ -pdbname=pdb `# pdbname` \ -cs=ZHS16GBK `# characterset: ZHS16GBK/AL32UTF8 ` \ -ncs=AL16UTF16 `# NCHARACTERSET: AL16UTF16/UTF8 ` \ -yum=/soft/yum.iso `# yum location: /dev/cdrom or /soft/yum.iso` \ -pu1=192.168.1.115 -pu2=192.168.1.117 `#public ip` \ -vi1=192.168.1.116 -vi2=192.168.1.118 `#virtual ip` \ -pr1=10.10.10.115 -pr2=10.10.10.117 `#private ip` \ -si=192.168.1.120 `# scan ip` \ -puf=eth0 -prf=eth1 `# network fcname` \ -or=NORMAL `# asm ocr redundancy: high/normal/external` \ -od=/dev/sdb,/dev/sdc,/dev/sdd `# asm ocr disk` \ -dr=EXTERNAL `# asm data redundancy: high/normal/external` \ -dd=/dev/sde `# asm data disk`

4.4 pg 编译安装

[root@pgsql soft]# mv CentOS-7-x86_64-DVD-1810.iso yum.iso [root@pgsql soft]# chmod a+x x_onekey.sh [root@pgsql soft]# sh x_onekey.sh -dt=pg \ -op=install \ -ht=single `#type: single/rac/ha` \ -v=16.1 `# version: 9.6.24/10.23/15.5` \ -i=192.168.137.19 `#Public ip` \ -n=pgdb1 `# hostname ` \ -pg_debug=yes `# Compiles all programs and libraries with debugging symbols ` \ -cassert=no `# Enables assertion checks in the server, which test for many "cannot happen" conditions. ` \ -tap_tests=no `# Enable tests using the Perl TAP tools ` \ -dtrace=no `# Compiles PostgreSQL with support for the dynamic tracing tool DTrace ` \ -yum=/soft/yum.iso `# yum location: /dev/cdrom or /soft/yum.iso` [root@pgdb1 soft]# su - postgres Last login: Mon Jan 29 23:21:54 CST 2024 on pts/0 [postgres@pgdb1 ~]$ source pg16.1_profile [postgres@pgdb1 ~]$ pg_ctl start -l logfile waiting for server to start.... done server started [postgres@pgdb1 ~]$ pg_ctl status pg_ctl: server is running (PID: 76274) /u01/app/pg/16.1/pgsql/bin/postgres [postgres@pgdb1 ~]$ psql psql (16.1) Type "help" for help. postgres=# \l List of databases Name | Owner | Encoding | Locale Provider | Collate | Ctype | ICU Locale | ICU Rules | Access privileges -----------+----------+----------+-----------------+---------+------------+------------+-----------+----------------------- postgres | postgres | UTF8 | libc | C | en_US.utf8 | | | template0 | postgres | UTF8 | libc | C | en_US.utf8 | | | =c/postgres + | | | | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | libc | C | en_US.utf8 | | | =c/postgres + | | | | | | | | postgres=CTc/postgres (3 rows) postgres=#

5. 常见问题

问题1 syntax error near unexpected token `$'{\r'' windows格式问题使用以下语句修复 sed -i 's/\r//g' install_oracle11g_linux7_single.sh 问题2 7装11.2.4不需要打补丁吗 Installation of Oracle 11.2.0.4 Database Software on OL7 fails with 'Error in invoking target 'agent nmhs' of makefile ' & “undefined reference to symbol ‘B_DestroyKeyObject’” error (Doc ID 1965691.1), solution: 01) Ignore the undefined symbol error during Oracle 11.2.0.4 installation and proceed further. The software installation will succeed without any further errors. 02) Download and install patch 19692824

6. 版本功能说明

****************x_onekey_v0.1.sh***************** 1). 自动安装Oracle 11G on Linux 7.x软件 2). 自动完成大页配置整改 3). 自动关闭防火墙/selinux等37项OS服务 4). 自动配置Oracle监听 5). 自动创建Oracle实例 ****************x_onekey_v0.2.sh***************** 1). 自动安装Oracle 19C/21C软件 2). 自动配置Oracle 19C/21C监听 3). 自动创建Oracle 19C/21C实例 ****************x_onekey_v0.3.sh***************** 1). 一键安装Oracle RAC 11G 版本 11.2.0.4 2). 一键安装Oracle RAC 19C 版本 19.3.0.0 3). 一键安装Oracle RAC 21C 版本 21.3.0.0 ****************x_onekey_v0.4.sh***************** 1). 添加内存检查,不符合安装要求,直接退出并报错 单机 11g/19c/21c: 内存>=2G 11G RAC: 内存>=2.5G 19C/21c rac: 内存>=8G 2). RAC网卡检查 #check nodename_db1: public1_interface == public_interface and priv1_interface == priv_interface #check nodename_db1: public2_interface == public_interface and priv2_interface == priv_interface 3). 时区检查 db1/db2 timezone check: Asia/Shanghai ****************x_onekey_v0.5.sh***************** 1). 安装日志x_onekey_`date`.log

7. 功能测试说明

image.png

8. 环境初始化脚本

  1. 确认该OS为全新环境,且只安装一套Oracle
  2. 确认该OS没有已运行的ORACLE及其它应用软件
  3. 以下清理脚本运行两次,执行前请仔细评审
rm -f /etc/init.d/init.ohasd rm -f /etc/init.d/ohasd rm -rf /etc/oracle rm -f /etc/init.d/init.cssd rm -f /etc/init.d/init.crs rm -f /etc/init.d/init.crsd rm -f /etc/init.d/init.evmd rm -rf /etc/oracle/scls_scr rm -f /etc/inittab.crs rm -f /etc/ohasd rm -f /etc/oraInst.loc rm -f /etc/oratab rm -rf /var/tmp/.oracle rm -f /etc/oraInst.loc rm -f /etc/inittab.* cat /dev/null > /etc/inittab rm -rf /tmp/* rm -rf /tmp/.* rm -rf /var/tmp/* rm -f /usr/local/bin/dbhome rm -f /usr/local/bin/oraenv rm -f /usr/local/bin/coraenv rm -rf /opt/ORCLfmap killall -u oracle killall -u oracle userdel -fr oracle userdel -fr grid groupdel oinstall groupdel dba groupdel oper groupdel asmadmin groupdel asmoper groupdel asmdba rm -rf /oradata/ rm -rf /u01/ rm -rf /soft/database rm -rf /soft/grid rm -f /soft/*.rsp rm -f /soft/*.properties rm -f /soft/*.log echo "127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 " > /etc/hosts rm -f /soft/setos.sh reboot

9. vmware配置共享存储

修改虚拟机vmx文件 在虚拟机的vmx文件中添加配置信息。 scsi1.sharedBus= "virtual" disk.locking= "false" diskLib.dataCacheMaxSize= "0" diskLib.dataCacheMaxReadAheadSize= "0" diskLib.DataCacheMinReadAheadSize= "0" diskLib.dataCachePageSize= "4096" diskLib.maxUnsyncedWrites= "0"

10. Linux7修改网卡名称

1. vim /etc/sysconfig/grub 在quiet后面添加 net.ifnames=0 biosdevname=0 保存退出 2. 执行命令 grub2-mkconfig -o /boot/grub2/grub.cfg,生成新的grub.cfg文件 3. 重命名网卡 vim /etc/sysconfig/network-scripts/ifcfg-ens33 更改dev等参数名字更改配置文件名字 NAME="eth0" DEVICE="eth0" mv /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-eth0 4. 添加udev的规则, vi /etc/udev/rules.d/70-persistent-net.rules UBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="00:0c:29:f0:88:d5",ATTR{type}=="1" ,KERNEL=="eth*",NAME="eth0" UBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="00:0c:29:f0:88:19",ATTR{type}=="1" ,KERNEL=="eth*",NAME="eth1" 5. 重启服务器,验证更改是否成功 ip addr
最后修改时间:2024-04-24 13:59:25
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论