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版本支持规划如下所示,
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. 功能测试说明
8. 环境初始化脚本
- 确认该OS为全新环境,且只安装一套Oracle
- 确认该OS没有已运行的ORACLE及其它应用软件
- 以下清理脚本运行两次,执行前请仔细评审
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进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。