如何实现业务零宕机情况下完成Oracle 11g数据库升级到19C

Oracle-rolling upgrade升级19c 本文主要描述Oracle11g升19c rolling upgrade升级测试,通过逻辑DG+autoupgrade方式实现rolling upgrade,从而达到在较少停机时间内完成Oracle11g升级到19c的目标 阅读详情

数据库升级最头大的,就是业务不能停机,或者只能停很短的时间,否则,不能让你升级,这个对于跨大版本升级,而且还想数据库升级的同时,还想把操作系统也一起升级,不停机,或者很多时间停机,尤其比较麻烦。升级完成后,还要去检查数据的准确性,这个不同的技术,检查的难度也不一样。

针对这种升级数据库和操作系统的场景,目前可有的方式如下:

1.EXPDP/IMPDP

2.XTTS

3.OGG

4.逻辑备库

5.其他同步软件

但要实现不停机,或短时间停机,比如10分钟,EXPDP/IMPDP方式是不行的,使用XTTS数据是否准确的确认,也比较麻烦,如果使用OGG,整个过程比较长,最终可以实现零宕机,但实现难度比较高。

在实际的工作种,我们发现,可以直接使用逻辑备库的方式来实现跨版本的升级,还是一个不错的方案。

下面就使用逻辑备库完成ORACLE 11g升级到19c,同时完成操作系统升级的过程进行说明:

1. 环境:
    当前版本:11.2.0.4 + LINUX 6.8
    升级版本:19.20.0 + LINUX 8.8
    
    数据量:600g
    
2.目标:
    要求:以最小停库时间(比如15分钟)实现数据库迁移到新机器并同时实现版本升级
    
3.解决办法:
    通过逻辑备库滚动升级方式实现
 

记录一次客户端形式oracle11g数据迁移19c操作 因oracle11g数据库官方平台不再负责维护升级,公司总部要求对11g数据迁移至19c数据库中。 阅读详情

相关推荐

Linux下Oracle 11g升级19c实录

Linux下Oracle 11g升级19c实录

听雪楼主 1777

Ubuntu 18.04 + Django 3.2 + React 17 稳定性全栈部署指南

Web 应用全栈开发中,环境稳定性与生产就绪性往往比技术新潮更重要。Django 作为成熟 Python Web 框架,凭借其内置 ORM、Admin 系统和安全机制,成为企业级后台首选;React 则以组件化与声明式 UI 支撑现代前端交互体验。二者在 Ubuntu 18.04 这一长期支持(LTS)系统上构成经过千锤百炼的黄金组合:Python 3.6.9 原生兼容、systemd 服务管理可靠、内核与安全基线久经验证。该方案特别适用于金融、政务等强合规场景,可无缝对接 LDAP、Oracle EBS

weixin_34345753的博客 387

Openfire XMPP服务器在Debian/Ubuntu VPS上的生产级部署指南

XMPP(Extensible Messaging and Presence Protocol)是一种开放、去中心化的实时通信协议,其核心原理基于XML流、SASL认证、TLS加密及分布式路由机制。作为成熟稳定的IM基础设施,XMPP具备天然的数据主权保障能力与协议透明性,技术价值体现在可审计、可定制、可私有化部署,广泛应用于企业内网通讯、合规消息系统、客服集成及物联网设备信令交互等场景。本文聚焦于在Debian 12或Ubuntu 22.04 LTS系统的VPS上,通过原生APT安装+手动升级Openfi

803

Docker Compose 一键部署生产级 Drupal 环境

Drupal 是基于 PHP 的开源内容管理系统,其运行依赖 Nginx 或 Apache、PHP 运行时(含 mbstring/gd/opcache 等扩展)、MySQL 数据库及可选 Redis 缓存——多服务协同的复杂性常导致本地环境不一致、部署失败率高。Docker Compose 通过声明式 YAML 文件统一管理服务拓扑、网络、卷挂载与启动顺序,实现环境配置即代码,确保开发、测试、生产三端完全一致。它并非简单容器化,而是将 PHP-FPM、Nginx、MySQL 等解耦为职责单一的标准化组件,支

weixin_30319153的博客 451

【信息科学与工程学】【云计算】计算机科学与自动化——第十五篇 云计算10 云计算领域架构

​:作为前端请求的统一入口,负载均衡器基于预设算法(如轮询、最小连接数)动态分配流量至后端服务器集群。​:通过IP哈希或Cookie绑定,保障同一用户请求由同一服务器处理(如电商购物车场景)。​:Nginx(HTTP/HTTPS反向代理)、HAProxy(TCP层负载均衡)。​:实时监控服务器状态(如响应时间、连接数),自动剔除故障节点,确保服务连续性。​:本地资源满载时,将流量分流至公有云(如AWS + 私有云混合架构)。​:LSTM预测流量峰值,强化学习动态调整权重(如阿里云智能负载均衡)。

weixin_49199313的博客 1858

Windows Server 2019 上 Oracle 11g 与 19c 多实例共存实战

Oracle 数据库多版本共存是企业级系统演进中的典型需求,其本质是通过操作系统层隔离、服务进程管控与网络通信分治,实现不同版本实例的物理独立与逻辑互通。核心原理在于利用 Windows 服务账户权限模型、监听器端口与 SID 绑定机制、以及 ORACLE_HOME 环境隔离,规避版本冲突与资源争用。该方案显著提升遗留系统兼容性与新特性落地效率,广泛应用于医疗 PACS、金融数据中台等需双轨运行的混合架构场景。本文聚焦 Windows Server 2019 平台,详解 Oracle 11g 和 19c 共

weixin_33416697的博客 39

Java Swing+MySQL教材管理系统实战:轻量可控的教务软件开发

Java Swing 是一种基于 AWT 的桌面 GUI 开发框架,适用于对响应式交互要求不高、但强调稳定性和本地部署能力的管理类应用;MySQL 作为成熟的关系型数据库,凭借其 ACID 特性与简单运维优势,广泛支撑中小规模业务系统的数据持久化需求。在教育信息化场景中,当面临用户操作习惯固化、网络环境受限、交付周期紧张等现实约束时,Swing+MySQL 组合展现出‘够用、可控、易维护’的技术价值。本文聚焦学校教材管理这一典型教务流程,详解如何利用 Java 17、HikariCP 连接池、utf8mb4

weixin_34006468的博客 399

Oracle 11g 到 19C 数据库升级详尽指导手册

内容概要:本文详细介绍了如何利用DBUA(Database Upgrade Assistant)工具将Oracle 11g数据库顺利地升级至Oracle 19C。主要包含了前期备份与恢复、具体升级流程,以及涉及的必要配置调整等方面,特别提到了相关注意事项,如检查脚本生成的日志和警告等。 适合人群:具备一定运维能力的专业人士。 使用场景及目标:适用于数据库管理员(DBAs)希望通过DBUA工具将现有的Oracle 11g数据库安全迁移至Oracle 19C的维护工作场合,从而提升性能和安全性,以及符合未来软件架构的发展趋势。 其他说明:文中提到的每一步都需要严格的顺序和细致的操作,尤其对于命令细节部分更为严谨对待。同时,文中附有多个故障解决方案帮助应对升级过程中可能出现的各种异常情形。

华为防火墙USG6600全流量日志配置指南:从流量监控到NAT日志的完整方案

本文详细介绍了华为USG6600防火墙全流量日志配置方案,涵盖流量监控、NAT日志及安全事件溯源等核心功能。通过精细化配置和性能优化技巧,帮助企业构建高效、合规的日志体系,提升网络安全运维效率。文章特别强调了日志采样与字段过滤的实用方法,适用于高流量环境下的资源优化。

gin88的博客 348

Quartus II 13.0安装避坑指南:从下载到破解的完整流程(附常见错误解决方案)

本文提供Quartus II 13.0软件的详细安装与破解指南,涵盖从下载准备、路径设置、主程序安装到授权配置的全流程。重点解析了破解过程中生成和修改license.dat文件的核心步骤,并针对“无法找到有效的License文件”等常见错误提供了实用的解决方案,帮助用户快速构建稳定的FPGA开发环境。

weixin_29291863的博客 759

从Palantir到AI时代:Forward Deployed Engineer模式的深度解析

《从Palantir到AI时代:FDE模式的创新与挑战》摘要:Palantir开创的前置部署工程师(FDE)模式正在成为AI创业公司的标配。该模式通过现场工程师深入了解客户需求,填补产品与实际应用间的鸿沟,颠覆了传统SaaS规模化路径。核心优势在于将定制化服务转化为产品发现机制,特别适合高度异质化的AI市场。成功关键在于平衡定制与标准化,通过合同价值增长、产品杠杆效应等独特指标衡量成效。FDE人才需要兼具领域洞察力与快速原型能力。这一模式表明,在AI等新兴领域,深入客户现场可能比单纯追求技术突破更能创造商业

老孙 | Ethan Sun 的博客:AI 智能体与 AI 原生软件的工程实践 4539

“傻瓜”stata入门——熟悉操作界面

小白开始学习stata和matlab,零基础上手

nnpersistent的博客 4456

ROS与Qt5人机交互界面开发:添加rviz显示界面

最后,点击"完成"以创建新的Qt5应用程序项目。通过结合ROS和Qt5,您可以创建强大的人机交互界面,以实现丰富的机器人控制和数据可视化。在本教程中,我们将在主窗口中创建一个简单的按钮,用于启动rviz显示界面。在Qt Creator的槽函数编辑器中,为按钮添加一个槽函数,该函数将在单击按钮时调用。在上面的代码中,我们使用QProcess类启动了一个新的进程,并执行"rviz"命令来启动rviz显示界面。当您单击Qt5应用程序中的按钮时,将会启动一个新的rviz窗口,显示机器人数据的可视化界面。

CodeJolt的博客 2067

《UDS协议从入门到精通》系列——图解0x27:安全访问

什么是安全访问服务?应用场景和基本原理是什么?全网最直观详细的图解UDS-0x27:安全访问服务!!

车载系统攻城狮 7233

【8】mctp & pldm

异步会check seq,保证不丢包,虽然发一条req,不用等,但是不能发下一条req,等上条response回来后才能发下一条。TO(tag owner)=1是request,TO=0是response,但是异步通信response由0改为1。如下还有kcs,i3c,serial等。

持续更新ing... 1080

动手在 SAP BTP Cloud Foundry 开发和部署 SAP UI5 应用的前置条件 - 订阅 SAP Build Work Zone Standard Version

摘要:本文介绍了SAP BTP Cloud Foundry环境中HTML5应用的概念,区分了web应用、HTML5应用和SAP UI5应用的关系。重点说明了在Cloud Foundry环境部署HTML5应用的方法是通过订阅SAP Build Work Zone standard edition服务,并详细描述了订阅过程中可能遇到的"OIDC trust missing"错误。该错误是由于业务用户认证需要配置SAP Cloud Identity Services的OpenID Connec

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 312

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

上一篇: 19C OCM 考试现场考试环境
下一篇: 基于RHEL9,ORACLE LINUX 9安装Oracle 19c 数据库
cqsztech
博客等级 码龄13年 549粉丝 97原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值