首页 > 数据库 >神通数据库备份恢复过程之二

神通数据库备份恢复过程之二

时间:2023-11-25 16:11:26浏览次数:38  
标签:opt 备份 myapp2103oscar 之二 true 数据库 schema

神通数据库备份恢复过程之二


背景

前期总结过神通数据库的备份, 
但是发现这两边在进行备份呢时效率非常地下
因为虚拟机有快照并且是 raid6的hdd 读写性能非常感人
数据库也大约有了100G以上

今天就进行一下脚本的更新, 提高备份呢的效率

学习来源:

https://www.jianshu.com/u/f786a43611a0

需要说明 原作者的文档其实存在一个风险. 
如果备份过程中数据库发生了变更, 会导致备份呢恢复失败

导出实际行与期望行数不一致

解决办法是导出时增加一个参数: 
shardingCount=1

可以避免这个问题. 

备份脚本

osrexp -usysdba/'szoscar55' -hlocalhost -p2003 -dosrdb level=schema \
file=/opt/ShenTong/back/ log=/opt/ShenTong/back/2023112502.log mode=entirety ignore=false schema=myapp2103oscar \
 view=true sequence=true procedure=true constraint=true trigger=true index=true shardingCount=1

注意恢复之前需要进行一下用户和表空间的创建

create tablespace myapp2103oscar datafile '/opt/ShenTong/odbs/OSRDB/myapp2103oscar.dbf'
create user myapp2103oscar with password 'Testxxxxxxxx?!'  default tablespace myapp2103oscar role sysdba;

然后执行恢复的操作

osrimp  -usysdba/szoscar55  -hlocalhost -p2003 -dosrdb level=schema file=/opt/ShenTong/back/2023-11-25.osr \
log=/opt/ShenTong/back/2023112502.log  mode=entirety ignore=true schema=myapp2103oscar recreateschema=true \
view=true sequence=true procedure=true recreateotherobject=true  recreatetable=true constraint=true trigger=true index=true

时间方面

一个 120G左右的原始数据库
我truncate了几个表达的表,从RAID6上面虚拟机备份到SSD raid 0上面的虚拟机耗时: 1小时 3600秒.
备份文件大小为: 14G

恢复时间想比较恢复要慢了一些, 大约耗时: 3900秒
恢复后的数据文件大小为: 42G

备注

本次紧紧进行了 schema级别的备份恢复
其他级别的备份会可以参照原文进行处理

感觉作者写的跟官文档比较详细, 可以直接参照

感谢神通数据库李老师的支持与帮助. 

标签:opt,备份,myapp2103oscar,之二,true,数据库,schema
From: https://www.cnblogs.com/jinanxiaolaohu/p/17855621.html

相关文章

  • SQL Server数据库 主键自增标识列设置为默认值重新为1
    关键代码:注意:表格里原存在有的数据自增列不会变更,变更的是重新添加后的自增列......
  • 【Django基础】操作数据库详解
    djangoORM简介O(objects):类和对象。R(Relation):关系,关系数据库中的表格。M(Mapping):映射。DjangoORM框架的功能:建立模型类和表之间的对应关系,允许我们通过面向对象的方式来操作数据库。根据设计的模型类生成数据库中的表格。通过方便的配置就可以进行数据库的切换。......
  • 数据结构之二叉堆(Java)
    一:概述二叉堆:二叉堆本质上是一种完全二叉树,它分为两个类型。最大堆最小堆二:最大堆与最小堆的具体说明<1>最大堆最大堆的任何一个父节点的值,值大于或等同于它左、右孩子节点的值。例子如下图所示:<2>最小堆最小堆的任何一个父节点的值,都小于或等于它的左、右孩子节点的值。例子如下图......
  • 【Django基础】Mysql数据库连接配置
    Django支持MySQL5.7及以上版本。Django的inspectdb功能使用information_schema数据库,其中包含所有数据库架构的详细数据。Django希望数据库支持Unicode(UTF-8编码),并将执行事务和引用完整性的任务交给它。django连接MySQL数据库,需要安装第三方数据库mysqlclientpip......
  • SqlServer 数据库表死锁
    数据库表死锁 spid  锁表进程tableName  被锁表名declare@spid intSet@spid =618--锁表进程declare@sqlvarchar(1000)set@sql='kill'+cast(@spid asvarchar)exec(@sql)select  request_session_id  spid,OBJECT_NAME(resource_associated_entity_i......
  • Linux下Oracle11G数据备份恢复(RMAN)
    数据库安装参考步骤1--14https://www.cnblogs.com/baixisuozai/p/17852235.html创建初始pfile文件$viminit.umpay.ora文件内容:umpay.__java_pool_size=4194304umpay.__large_pool_size=4194304umpay.__oracle_base='/DataBase/app/oracle'#ORACLE_BASEsetfromenv......
  • 构建高效数据流转的 ETL 系统:数据库 + Serverless 函数计算的最佳实践
    作者|柳下概述随着企业规模和数据量的增长,数据的价值越来越受到重视。数据的变化和更新变得更加频繁和复杂,因此及时捕获和处理这些变化变得至关重要。为了满足这一需求,数据库CDC(ChangeDataCapture)技术应运而生。然而,从ETL架构的角度来看,CDC仅满足了数据的提取(Extract)能力。为......
  • 数据库<200b>字符处理
    1.在trino执行SQL报错,如下图2.直接查看值没有什么异常3.通过将值复制到vim中,发现是特殊字符<200b>导致4.查看资料,发现有多种处理方式,但均不支持trino--replace(所在字段,'\u200b','')--使用trim()方法可以去除掉神奇的空格--使用正则表式进行替换replace(/\t+/g,"......
  • 构建高效数据流转的 ETL 系统:数据库 + Serverless 函数计算的最佳实践
    作者|柳下概述随着企业规模和数据量的增长,数据的价值越来越受到重视。数据的变化和更新变得更加频繁和复杂,因此及时捕获和处理这些变化变得至关重要。为了满足这一需求,数据库CDC(ChangeDataCapture)技术应运而生。然而,从ETL架构的角度来看,CDC仅满足了数据的提取(Extract)能力。......
  • mysql数据库物理及逻辑备份
    一、理论知识1.1:物理备份备份数据库操作系统的物理文件(数据文件、日志文件等):冷备份(脱机备份):关闭数据库进行热备份(联机备份):数据库正运行,依赖数据库的日志文件温备份:数据库锁定表格(可读不可写)后进行常见方法:物理冷备:拷贝数据库文件打包备份,需进行锁表-备份-解表。恢复时拷......