暂无图片
暂无图片
3
暂无图片
暂无图片
暂无图片

openEuler2203使用applyRU方式安装ORACLE 19.28

原创 吴明 2025-09-08
532

图片

在openEuler2203操作系统中,使用正常方式安装ORACLE 19C的时候,会遇到以上报错,解决方法是重新安装glibc-devel的rpm包、做好lib目录下文件的软链接,然后relink all。这样操作有点折腾,并且也不一定能继续正常安装。

安装完19C数据库软件后,正常都是需要安装补丁的,所以可以把安装软件、安装补丁的过程合并到一起,既可以跳过上述错误正常安装软件又可以安装RU补丁。

以下就是使用applyRU的方式进行安装软件及打补丁的过程。

1,系统环境配置

[root@19c ~]# mkdir /soft/
[root@19c ~]# ll /soft
上传操作系统镜像、ORACLE 19C安装包、补丁文件
compat-libcap1-1.10-7.el7.x86_64.rpm
compat-libpthread-nonshared-2.28-251.0.2.el8_10.4.x86_64.rpm
compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm
LINUX.X64_193000_db_home.zip
openEuler-22.03-LTS-everything-x86_64-dvd.iso
p37960098_190000_Linux-x86-64.zip
p6880880_190000_Linux-x86-64.zip

#1.关闭防火墙
[root@19c ~]# systemctl stop firewalld
[root@19c ~]# systemctl disable firewalld

#2.关闭selinux
[root@19c ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
[root@19c ~]# setenforce 0

#3.编辑yum源
[root@19c ~]# mount -t iso9660 /soft/openEuler-22.03-LTS-everything-x86_64-dvd.iso /mnt/
[root@19c ~]# mkdir /etc/yum.repos.d/bak
[root@19c ~]# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak/
[root@19c ~]# echo '
[base]
name=base
baseurl=file:///mnt/
enable=1
gpgcheck=0' >> /etc/yum.repos.d/local.repo

#4.安装包
[root@19c ~]# yum install -y libnsl
[root@19c ~]# yum install -y sysstat
[root@19c ~]# yum install -y ksh
[root@19c ~]# yum install -y libaio-devel
[root@19c ~]# yum install -y net-tools
[root@19c ~]# yum install -y smartmontools
[root@19c ~]# yum -y install /soft/compat-libcap1-1.10-7.el7.x86_64.rpm 
[root@19c ~]# yum -y install /soft/compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm 
[root@19c ~]# yum -y install /soft/compat-libpthread-nonshared-2.28-251.0.2.el8_10.4.x86_64.rpm

#5.编辑hosts文件
[root@19c ~]# echo "192.168.29.131 orcl" >> /etc/hosts

#6.修改linux内核文件
[root@19c ~]# echo '
kernel.shmmax = 7730941132
kernel.shmall = 1887436
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
fs.file-max = 6815744
net.ipv4.tcp_max_tw_buckets = 6000
net.ipv4.ip_local_port_range = 9000 65500
net.ipv4.tcp_tw_recycle = 0
net.ipv4.tcp_tw_reuse = 1
#net.core.somaxconn = 262144
net.core.netdev_max_backlog = 262144
net.ipv4.tcp_max_orphans = 262144
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_fin_timeout = 1
net.ipv4.tcp_keepalive_time = 30
net.ipv4.tcp_keepalive_probes = 6
net.ipv4.tcp_keepalive_intvl = 5
net.ipv4.tcp_timestamps = 0
fs.aio-max-nr = 1048576
net.ipv4.conf.all.rp_filter = 2
net.ipv4.conf.default.rp_filter = 2' >> /etc/sysctl.conf
---vm.nr_hugepages = 4096
4096*2M,正好是8192M,SGA的大小---
[root@19c ~]# sysctl -p

#7.修改linux限制文件
[root@19c ~]# echo '
oracle   soft   nofile    65536
oracle   hard   nofile    65536
oracle   soft   nproc    16384
oracle   hard   nproc    16384
oracle   soft   stack    10240
oracle   hard   stack    32768
oracle   hard   memlock    134217728
oracle   soft   memlock    134217728' >> /etc/security/limits.conf
memlock计算方法:pagesize数量4096*2048=8388608

#8.修改/etc/pam.d/login文件
[root@19c ~]# echo '
session required pam_limits.so' >> /etc/pam.d/login
#9.修改环境变量
[root@19c ~]# echo '
if [ $USER = "oracle" ]; then
   if [ $SHELL = "/bin/ksh" ]; then
      ulimit -p 16384
      ulimit -n 65536
      else
      ulimit -u 16384 -n 65536
   fi
fi' >> /etc/profile
[root@19c ~]# source /etc/profile

#9.创建组和用户
[root@19c ~]# groupadd oinstall
[root@19c ~]# groupadd dba
[root@19c ~]# groupadd asmdba
[root@19c ~]# groupadd backupdba
[root@19c ~]# groupadd dgdba
[root@19c ~]# groupadd kmdba
[root@19c ~]# groupadd racdba
[root@19c ~]# groupadd oper
[root@19c ~]# useradd -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba,oper -m oracle
[root@19c ~]# echo "oracle@123"| passwd oracle --stdin

#10.编辑用户环境变量
[root@19c ~]# su - oracle
[oracle@19c ~]$ vi .bash_profile
umask 022
export TMP=/tmp
export TMPDIR=$TMP
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/19.3.0/db
export ORACLE_TERM=xterm
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORACLE_SID=orcl
export PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/perl/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export PERL5LIB=$ORACLE_HOME/perl/lib

#11.创建目录
[root@19c ~]# mkdir -p /u01/app/oracle/product/19.3.0/db
[root@19c ~]# mkdir /oradata
[root@19c ~]# mkdir /archivelog
[root@19c ~]# chown -R oracle:oinstall /u01
[root@19c ~]# chmod -R 775 /u01
[root@19c ~]# chown -R oracle:oinstall /oradata/
[root@19c ~]# chown -R oracle:oinstall /archivelog/
[root@19c ~]# chown oracle:oinstall /soft/
[root@19c ~]# su - oracle
[oracle@19c ~]$ cd /soft
[oracle@19c ~]$ unzip p37960098_190000_Linux-x86-64.zip

2,静默安装数据库软件

[oracle@orcl ~]$ unzip -d /u01/app/oracle/product/19.3.0/db /soft/LINUX.X64_193000_db_home.zip
[oracle@orcl ~]$ cp $ORACLE_HOME/install/response/db_install.rsp /home/oracle/db_install.rsp
[oracle@orcl ~]$ vi /home/oracle/db_install.rsp   修改为如下内容
oracle.install.option=INSTALL_DB_SWONLY
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oraInventory
ORACLE_HOME=/u01/app/oracle/product/19.3.0/db
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=oper
oracle.install.db.OSBACKUPDBA_GROUP=backupdba
oracle.install.db.OSDGDBA_GROUP=dgdba
oracle.install.db.OSKMDBA_GROUP=kmdba
oracle.install.db.OSRACDBA_GROUP=racdba
oracle.install.db.rootconfig.executeRootScript=false
[oracle@orcl ~]$ mv /u01/app/oracle/product/19.3.0/db/OPatch/ /u01/app/oracle/product/19.3.0/db/OPatch.bak
[oracle@orcl ~]$ unzip -d /u01/app/oracle/product/19.3.0/db /soft/p6880880_190000_Linux-x86-64.zip
[oracle@orcl ~]$ export CV_ASSUME_DISTID=RHEL8
[oracle@orcl ~]$ /u01/app/oracle/product/19.3.0/db/runInstaller -applyRU /soft/37960098 -silent -responseFile /home/oracle/db_install.rsp

        root用户执行脚本:
        1. /u01/app/oraInventory/orainstRoot.sh
        2. /u01/app/oracle/product/19.3.0/db/root.sh

3,静默配置监听

[oracle@orcl ~] $ netca -silent -responseFile $ORACLE_HOME/assistants/netca/netca.rsp

4,静默创建数据库

[oracle@orcl ~]$ cp /u01/app/oracle/product/19.3.0/db/assistants/dbca/dbca.rsp /home/oracle/dbca.rsp
[oracle@orcl ~]$ vi /home/oracle/dbca.rsp    修改为如下内容
responseFileVersion=/oracle/assistants/rspfmt_dbca_response_schema_v19.0.0
gdbName=orcl
sid=orcl
databaseConfigType=SI
templateName=General_Purpose.dbc
sysPassword=0rAcle@1q3
systemPassword=0rAcle@1q3 
oracleHomeUserPassword=0rAcle@1q3
datafileDestination=/oradata
characterSet=AL32UTF8
totalMemory=5120
[oracle@orcl ~]$ dbca -silent -createDatabase -responseFile /home/oracle/dbca.rsp

5,最佳实践参数

[oracle@orcl ~]$ sqlplus / as sysdba
create pfile='/home/oracle/orclpfile.ora' from spfile;
alter system set "_b_tree_bitmap_plans"=false            sid='*'      scope=spfile;
alter system set "_bloom_filter_enabled"=FALSE        sid='*'         scope=spfile;
alter system set "_cleanup_rollback_entries"=5000        sid='*'      scope=spfile;
alter system set "_datafile_open_errors_crash_instance"=false sid='*' scope=spfile;
alter system set "_datafile_write_errors_crash_instance"=false sid='*' scope=spfile;
alter system set "_cursor_obsolete_threshold" =100   sid='*'          scope=spfile;
alter system set "_db_block_numa"=1       sid='*'    scope=spfile;
alter system set "_drop_stat_segment"=1    sid='*'     scope=spfile;
alter system set "_enable_pdb_close_abort"=true    sid='*'  scope=spfile;
alter system set "_enable_pdb_close_noarchivelog"=false  sid='*'  scope=spfile;
alter system set "_fix_control"='8611462:OFF'  sid='*'  scope=spfile;
alter system set "_gc_policy_time"=0   sid='*'   scope=spfile;
alter system set "_ges_direct_free_res_type"=CTARAHDXBB  sid='*'  scope=spfile;
alter system set "_index_partition_large_extents"=FALSE sid='*' scope=spfile;
alter system set "_keep_remote_column_size"=TRUE sid='*' scope=spfile;
alter system set "_ktb_debug_flags"=8   sid='*'  scope=spfile;
alter system set "_library_cache_advice"=false   sid='*'  scope=spfile;
alter system set "_memory_imm_mode_without_autosga"=FALSE  sid='*' scope=spfile;
alter system set "_optimizer_ads_use_result_cache" = FALSE sid='*' scope=spfile;
alter system set "_optimizer_aggr_groupby_elim"=FALSE  sid='*' scope=spfile;
alter system set "_optimizer_dsdir_usage_control"=0  sid='*' scope=spfile;
alter system set "_optimizer_adaptive_cursor_sharing"=false sid='*' scope=spfile;
alter system set "_optimizer_extended_cursor_sharing"=none sid='*' scope=spfile;
alter system set "_optimizer_extended_cursor_sharing_rel"=none sid='*' scope=spfile;
alter system set "_optimizer_mjc_enabled"=FALSE  sid='*' scope=spfile;
alter system set "_optimizer_null_accepting_semijoin"=false sid='*' scope=spfile;
alter system set "_optimizer_null_aware_antijoin"=false  sid='*' scope=spfile;
alter system set "_optimizer_reduce_groupby_key"=FALSE  sid='*' scope=spfile;
alter system set "_optimizer_unnest_scalar_sq"=false sid='*' scope=spfile;
alter system set "_optimizer_use_feedback"=false  sid='*' scope=spfile;
alter system set "_part_access_version_by_number"=FALSE sid='*' scope=spfile;
alter system set "_partition_large_extents"=FALSE sid='*' scope=spfile;
alter system set "_partition_large_extents"=FALSE sid='*'  scope=spfile;
alter system set "_px_use_large_pool"=true  sid='*'  scope=spfile;
alter system set "_report_capture_cycle_time"=0  sid='*' scope=spfile;
alter system set "_rollback_segment_count"=2000 sid='*' scope=spfile;
alter system set "_serial_direct_read"=never sid='*' scope=spfile;
alter system set "_sort_elimination_cost_ratio"=1 sid='*' scope=spfile;
alter system set "_sql_plan_directive_mgmt_control"=0  sid='*' scope=spfile;
alter system set "_sys_logon_delay"=0  sid='*' scope=spfile;
alter system set "_undo_autotune"=false sid='*'  scope=spfile;
alter system set "_use_adaptive_log_file_sync"=FALSE sid='*'  scope=spfile;
alter system set "_use_single_log_writer"=true  sid='*' scope=spfile;
alter system set "_ksxp_ipclw_enabled"=true  sid='*' scope=spfile;
alter system set "_shared_pool_reserved_pct"=20  sid='*' scope=spfile;
alter system set audit_trail=none   sid='*'  scope=spfile;
alter system set autotask_max_active_pdbs=10  sid='*' scope=spfile;
alter system set cell_offload_processing=false  sid='*'  scope=spfile;
alter system set control_file_record_keep_time=31 sid='*' scope=spfile;
alter system set db_cache_advice=off  sid='*'  scope=spfile;
alter system set db_files=5000   sid='*'  scope=spfile;
alter system set deferred_segment_creation=false  sid='*'  scope=spfile;
alter system set enable_ddl_logging=true  sid='*' scope=spfile;
alter   system   set   event='28401   trace   name   context   forever,level   1','60025   trace   name   contextforever','10943   trace   name   context   forever,level   2097152','10949   trace   name   context   forever,level1','10262 trace name context forever, level 90000' sid='*' scope=spfile;
alter system set filesystemio_options=setall  sid='*' scope=spfile;
alter system set max_shared_servers=0  sid='*'  scope=spfile;
alter system set memory_target=0  sid='*'  scope=spfile;
alter system set open_cursors=3000  sid='*'  scope=spfile;
alter system set open_links =40   sid='*'  scope=spfile;
alter system set open_links_per_instance =40   sid='*'  scope=spfile;
alter system set optimizer_adaptive_plans=FALSE   sid='*'  scope=spfile;
alter system set parallel_force_local=true sid='*'  scope=spfile;
alter system set pga_aggregate_limit=0 sid='*'  scope=spfile;
alter system set resource_manager_plan='FORCE:' sid='*'  scope=spfile;
alter system set result_cache_max_size=0  sid='*'  scope=spfile;
alter system set sec_max_failed_login_attempts=100  sid='*'  scope=spfile;
alter system set session_cached_cursors=300 sid='*' scope=spfile;
alter system set shared_servers=0    sid='*' scope=spfile;
alter system set temp_undo_enabled=false sid='*'  scope=spfile;
alter system set undo_retention=10800  sid='*' scope=spfile;

6,配置归档

SQL> alter system set log_archive_dest_1='location=/archivelog';
SQL> shutdown immediate
SQL> startup mount
SQL> alter database archivelog;
SQL> alter database open;

SQL> alter system switch logfile;
SQL> alter system switch logfile;
SQL> archive log list
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            /archivelog
Oldest online log sequence     12
Next log sequence to archive   14
Current log sequence           14

7,配置定时expdp备份

[root@Dev-DB ~]# crontab -e
0 0 * * * su - oracle -c /home/oracle/expdp_schema_workflow.sh
[oracle@Dev-DB ~]$ vi /home/oracle/expdp_schema_workflow.sh 
export BAKDATE=`date +%Y-%m-%d-%H-%M-%S`
find /backup -name expdp_workflow.*.dmp -mtime +1 -exec rm -rf {} \;
find /backup -name expdp_workflow.*.log -mtime +1 -exec rm -rf {} \;
nohup expdp \'/ as sysdba\' directory=datapump dumpfile=expdp_workflow_orcl.$BAKDATE.%U.dmp logfile=expdp_workflow_orcl.$BAKDATE.log schemas=workflow &
[oracle@Dev-DB ~]$ chmod +x /home/oracle/expdp_schema_workflow.sh

8,获取ORACLE 19.28安装包


关注公众号后台回复19.28可获取下载链接

微信图片_20250908115822.png

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论