前言 Oracle 一键安装脚本,演示 Oracle Linux 8.10 ARM 一键安装 Oracle 19C 单机(全程无需人工干预)。
⭐️ 脚本下载地址 :Shell脚本安装Oracle数据库
前置准备
1、系统组安装好操作系统(支持最小化安装)
2、网络组配置好主机网络,通常只需要一个公网 IP 地址
3、DBA 创建软件目录:mkdir /soft
4、DBA 上传 Oracle 安装介质(基础包,补丁包)到 /soft 目录下
5、DBA 上传 Oracle 一键安装脚本到 /soft 目录下,授予脚本执行权限:chmod +x OracleshellInstall
6、DBA 挂载主机 ISO 镜像,这里只需要 mount 上即可(这个很简单,不了解的可以百度下)
7、根据脚本安装脚本以及实际情况,配置好脚本的安装参数,在 /soft 目录下执行一键安装即可。
环境信息 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 [root@oel810-arm64 soft]# cat /etc/os-release NAME="Oracle Linux Server" VERSION="8.10" ID="ol" ID_LIKE="fedora" VARIANT="Server" VARIANT_ID="server" VERSION_ID="8.10" PLATFORM_ID="platform:el8" PRETTY_NAME="Oracle Linux Server 8.10" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:oracle:linux:8:10:server" HOME_URL="https://linux.oracle.com/" BUG_REPORT_URL="https://github.com/oracle/oracle-linux" ORACLE_BUGZILLA_PRODUCT="Oracle Linux 8" ORACLE_BUGZILLA_PRODUCT_VERSION=8.10 ORACLE_SUPPORT_PRODUCT="Oracle Linux" ORACLE_SUPPORT_PRODUCT_VERSION=8.10 [root@oel810-arm64 soft]# uname -m aarch64 [root@oel810-arm64 soft]# ip a 2: enp0s5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link /ether 00:1c:42:88:c4:f2 brd ff:ff:ff:ff:ff:ff inet 10.211.55.130/24 brd 10.211.55.255 scope global noprefixroute enp0s5 valid_lft forever preferred_lft forever inet6 fdb2:2c26:f4e4:0:21c:42ff:fe88:c4f2/64 scope global dynamic noprefixroute valid_lft 2591578sec preferred_lft 604378sec inet6 fe80::21c:42ff:fe88:c4f2/64 scope link noprefixroute valid_lft forever preferred_lft forever [root@oel810-arm64 soft]# mount /dev/sr0 /mnt/ mount: /mnt: WARNING: device write-protected, mounted read-only. [root@oel810-arm64 soft]# mount | grep iso9660 | grep -v "/run/media" /dev/sr0 on /mnt type iso9660 (ro,relatime,nojoliet,check=s,map=n,blocksize=2048,iocharset=utf8) [root@oel810-arm64 soft]# df -h|grep /mnt /dev/sr0 11G 11G 0 100% /mnt [root@oel810-arm64 soft]# ll -rwx------. 1 root root 2415583176 Jun 27 12:58 LINUX.ARM64_1919000_db_home.zip -rwxr-xr-x. 1 root root 228591 Jun 27 12:57 OracleShellInstall
确保安装环境准备完成后,即可执行一键安装。
安装命令 使用标准生产环境安装参数:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 [root@oel810-arm64 ~]# cd /soft/ [root@oel810-arm64 soft]# chmod +x OracleShellInstall ./OracleShellInstall -lf enp0s5 `# 主机网卡名称`\ -n oel810-arm64 `# 主机名`\ -op 'P@ssw0rd!123' `# 主机 oracle 用户密码`\ -d /u01 `# Oracle 软件安装基础目录`\ -ord /oradata `# 数据库文件存放目录`\ -o lucifer `# 数据库名称`\ -dp 'Passw0rd#PST' `# sys/system 用户密码`\ -ds AL32UTF8 `# 数据库字符集`\ -ns AL16UTF16 `# 国家字符集`\ -redo 10 `# 在线重做日志大小(M)`\ -opd Y `# 是否优化数据库`
安装过程 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 ███████ ██ ████████ ██ ██ ██ ██ ██ ██ ██ ██░░░░░██ ░██ ██░░░░░░ ░██ ░██ ░██░██ ░██ ░██ ░██ ██ ░░██ ██████ ██████ █████ ░██ █████ ░██ ░██ █████ ░██ ░██░██ ███████ ██████ ██████ ██████ ░██ ░██ ░██ ░██░░██░░█ ░░░░░░██ ██░░░██ ░██ ██░░░██░█████████░██████ ██░░░██ ░██ ░██░██░░██░░░██ ██░░░░ ░░░██░ ░░░░░░██ ░██ ░██ ░██ ░██ ░██ ░ ███████ ░██ ░░ ░██░███████░░░░░░░░██░██░░░██░███████ ░██ ░██░██ ░██ ░██░░█████ ░██ ███████ ░██ ░██ ░░██ ██ ░██ ██░░░░██ ░██ ██ ░██░██░░░░ ░██░██ ░██░██░░░░ ░██ ░██░██ ░██ ░██ ░░░░░██ ░██ ██░░░░██ ░██ ░██ ░░███████ ░███ ░░████████░░█████ ███░░██████ ████████ ░██ ░██░░██████ ███ ███░██ ███ ░██ ██████ ░░██ ░░████████ ███ ███ ░░░░░░░ ░░░ ░░░░░░░░ ░░░░░ ░░░ ░░░░░░ ░░░░░░░░ ░░ ░░ ░░░░░░ ░░░ ░░░ ░░ ░░░ ░░ ░░░░░░ ░░ ░░░░░░░░ ░░░ ░░░ 注意:本脚本仅用于新服务器上实施部署数据库使用,严禁在已运行数据库的主机上执行,以免发生数据丢失或者损坏,造成不可挽回的损失!!! 请选择安装模式 [单机(si)/单机ASM(sa)/集群(rac)] : si 数据库安装模式: single 请选择数据库版本 [11/12/19/21] : 19 数据库版本: 19 正在进行安装前检查,请稍等...... 正在检测安装包 /soft/LINUX.ARM64_1919000_db_home.zip 的 MD5 值是否正确,请稍等...... OracleShellInstall 开始安装,详细安装过程可查看日志: tail -2000f /soft/print_shell_install_20240627130857.log 正在获取操作系统信息......已完成 (耗时: 1 秒) 正在配置本地软件源......已完成 (耗时: 1 秒) 正在安装依赖包......已完成 (耗时: 39 秒) 正在禁用防火墙......已完成 (耗时: 1 秒) 正在禁用 selinux......已完成 (耗时: 1 秒) 正在配置 nsyctl......已完成 (耗时: 1 秒) 正在配置主机名和 /etc/hosts......已完成 (耗时: 0 秒) 正在创建用户和组......已完成 (耗时: 1 秒) 正在创建安装目录......已完成 (耗时: 1 秒) 正在配置透明大页 && NUMA && 磁盘 IO 调度器......已完成 (耗时: 1 秒) 正在配置操作系统参数 sysctl......已完成 (耗时: 1 秒) 正在配置 RemoveIPC......已完成 (耗时: 1 秒) 正在配置用户限制 limit ......已完成 (耗时: 1 秒) 正在配置 shm 目录......已完成 (耗时: 1 秒) 正在配置用户环境变量......已完成 (耗时: 1 秒) 正在解压 Oracle 安装包以及补丁......已完成 (耗时: 38 秒) 正在安装 Oracle 软件以及补丁......已完成 (耗时: 31 秒) 正在创建监听......已完成 (耗时: 1 秒) 正在创建数据库......已完成 (耗时: 233 秒) 正在优化数据库......已完成 (耗时: 5 秒) 恭喜!Oracle 一键安装执行完成 (耗时: 361 秒),现在是否重启主机:[Y/N] Y 正在重启当前节点主机......
连接测试 查看系统版本:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 [root@oel810-arm64:/root]# cat /etc/os-release NAME="Oracle Linux Server" VERSION="8.10" ID="ol" ID_LIKE="fedora" VARIANT="Server" VARIANT_ID="server" VERSION_ID="8.10" PLATFORM_ID="platform:el8" PRETTY_NAME="Oracle Linux Server 8.10" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:oracle:linux:8:10:server" HOME_URL="https://linux.oracle.com/" BUG_REPORT_URL="https://github.com/oracle/oracle-linux" ORACLE_BUGZILLA_PRODUCT="Oracle Linux 8" ORACLE_BUGZILLA_PRODUCT_VERSION=8.10 ORACLE_SUPPORT_PRODUCT="Oracle Linux" ORACLE_SUPPORT_PRODUCT_VERSION=8.10
查看补丁信息:
1 2 3 4 5 6 7 8 9 [oracle@oel810-arm64:/home/oracle]$ sqlplus -v SQL*Plus: Release 19.0.0.0.0 - Production Version 19.19.0.0.0 [oracle@oel810-arm64:/home/oracle]$ opatch lspatches There are no Interim patches installed in this Oracle Home "/u01/app/oracle/product/19.3.0/db" . OPatch succeeded.
查看监听:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 [oracle@oel810-arm64:/home/oracle]$ lsnrctl stat LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 27-JUN-2024 13:18:18 Copyright (c) 1991, 2023, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oel810-arm64)(PORT=1521))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production Start Date 27-JUN-2024 13:16:23 Uptime 0 days 0 hr. 1 min. 55 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/oel810-arm64/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oel810-arm64)(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
连接数据库:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 [oracle@oel810-arm64:/home/oracle]$ sas SQL*Plus: Release 19.0.0.0.0 - Production on Thu Jun 27 13:18:40 2024 Version 19.19.0.0.0 Copyright (c) 1982, 2023, Oracle. All rights reserved. Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.19.0.0.0 sys@LUCIFER 2024-06-27 13:18:40> 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
数据库可以正常连接。