小编poj*_*guy的帖子

如何使用 RMAN 从完整恢复备份数据集创建测试数据库?

对于 DBA 角色是第三或第七位并且很少接触 Oracle 的人来说,我该如何使用 RMAN 从完整恢复备份数据集创建测试数据库?

在问题的结尾我一直在抱怨......

设想:

我有一个完整的生产数据库 RMAN 备份集,作为闪回恢复目录的副本,我想从中构建一个测试数据库。

我已经开始从这篇文章中了解我需要做的事情:Oracle 11 rman db restore file corruption

我没有得到的是他的示例脚本中的一些“字母汤”来自哪里。

示例脚本(带注释):

rman target /
set DBID ...    // Where does this come from?  The existind DB I plan to overlay, or some magic spot in the RMAN backup set?
startup nomount
RESTORE CONTROLFILE FROM 'file destination' // is this my flash recovery directory?
shutdown;
startup mount;

// Is it right to assume that this is the directory containing …
Run Code Online (Sandbox Code Playgroud)

oracle rman oracle-12c

5
推荐指数
1
解决办法
5276
查看次数

如何针对大量插入调整具有许多非聚集索引的非常大的表?

环境:

Windows Server 2019 上的 SQL Server 2019、由 TrueNAS 支持的 KVM、16 核、32 GB RAM。应用程序运行 50 个并行线程,所有线程都插入同一个大型表中。这种组合似乎不利于 SQL Server 架构

额外细节

  • 问题表既深又宽 - 20,000,000 行,超过 300 列和 40-50 个索引
  • 该应用程序使用 JDBC Batch API。由于行大小的原因,该特定表将分批插入 1,000 行。
  • 行大小更合理的表以 10,000 行为批量插入
  • 我无法分享实际的 DDL,但除了行很大之外(一个代理键 BIGINT ID 列、两个自然键 VARCHAR 列、300 个左右的货物列、0 个 BLOB/CLOB 列,然后 40-50 个),它非常普通索引)
  • 主键索引DDL为“create unique index mytable_pk on dbo.mytable (keycolumn);”
  • 唯一的其他唯一索引 DDL 是“在 dbo.mytable (division, itemnum) 上创建唯一索引 mytable_ndx1”;
  • 拥有该数据库的产品被数百名财富 2000 强客户使用,因此更改数据模型对于我或产品供应商来说都不是一个选择。

限制

  • 由于数据库最终是第三方的,因此我对其所做的任何更改都必须就位。一旦数据被插入其中,我就无法再访问它。
  • 该数据库由第三方现成应用程序拥有。
  • 主键是一个连续整数

观察和指标

在此过程的早期,我们遇到了 CPU 资源瓶颈。

一旦达到大约 1,000,000 行,我们就在锁存器上进行单线程处理,有时在锁存器上花费超过两秒,并且很少在锁存器上花费少于 500 …

sql-server

2
推荐指数
1
解决办法
1249
查看次数

标签 统计

oracle ×1

oracle-12c ×1

rman ×1

sql-server ×1