当前位置:网站首页>DM8 database recovery based on point in time
DM8 database recovery based on point in time
2022-07-04 08:11:00 【Song Xiaorong】
In the production environment , When we delete important data by mistake , You can use flashback queries to retrieve the original data , But when the table is deleted or the database does not turn on the flashback function , You cannot use flash back to get the original table data ; At this point, we can use point in time recovery based on archived logs ( Incomplete recovery ) To recover data or tables .
Point in time based recovery
01
Backup database
The premise of database failure restoration is to have backup files , Here create an original database backup file , have access to DMRMAN Offline backup files , It can also be an online backup file . Take online backup as an example ( Before online backup , You need to ensure that the database has been opened and configured for archiving ). Use SYSDBA User login database , Execute the following statement to back up the database :
SQL> backup database full backupset 'DMTESTFULL_ONLINE0723';
02
Manufacturing data , Generate archive logs
establish test user , And in test The user creates a table t_table And insert data , This process generates archive logs .
SQL> create user test IDENTIFIED by dameng123 DEFAULT TABLESPACE main;
SQL> create table test.t_table as select * from SYSOBJECTS;
03
Analog fault , Delete table
Analog fault , Delete test The user is shown in the following table t_table. And record the system time when deleting the table .
04
Using backup and archive logs will
The database is restored to the specified point in time
t_table Table deleted , To retrieve the data of this table , The database can only be restored to the moment before the table is deleted . The recovery steps are as follows :
① Restore the database with backup files
Execute the following command to stop the database :
[[email protected] bin]$ DmServiceDMTESTSERVER stop
Use steps 1 The backup file of restores the database to the state at the time of backup :
RMAN> restore database '/dm8/data/DMTEST/dm.ini' from backupset 'DMTESTFULL_ONLINE0723';
② Restore the database to a specified point in time using archived logs
Execute the following command , Appoint with archivedir Parameter use archive recovery , And designate until time Parameter restore the database to the time before deleting the table , By step 3 hear , We'll probably be here 2020-07-23 10:48:53 The table data was deleted at the previous time , Restore the database to 2020-07-23 10:48:40 Time for ( The more accurate the time, the better , It cannot be estimated accurately ).
RMAN> recover database '/dm8/data/DMTEST/dm.ini' with archivedir '/dm8/data/DMTEST/arch' until time '2020-07-23 10:48:40';
As can be seen from the screenshot below , Archive recovery is not 100%( Because it is incomplete recovery , Not all archived logs have been completely redone ), Just restore to 93%.
③ Update database magic number
Execute the following command to update the magic number of the database db_magic Information .
RMAN> recover database '/dm8/data/DMTEST/dm.ini' update db_magic;
here , Database recovery complete .
perform DmServiceDMTESTSERVER start Start database , Connect to database query test Under the user t_table Table data , You can see t_test Table restored .
summary :
Use RECOVER Command to restore the database , It can be backup set based recovery , It can also be the recovery of local archived logs . Point in time based recovery is one of the ways to recover using local archived logs .
In addition to the specified point in time , You can also specify LSN Resume .DM Each of them REDO Each log record corresponds to a unique LSN value , Appoint LSN Value later , The database will be accurately restored to produce this LSN The state of the point in time . be based on LSN The recovery of is to use UNTIL LSN The parameter is restored to the specified LSN The state of the point in time .
Based on point in time or LSN All recoveries are incomplete , Restore to the latest state based on archived logs is full recovery .
In the actual production environment , If you just delete a table or data , It is recommended to restore the database to another machine ( Target database ) On , Then copy the archive log of the production environment to restore the target database to the specified point in time , To retrieve table data without affecting the generation environment , Reduce the impact on the generation environment .
边栏推荐
- L2-013 red alarm (C language) and relevant knowledge of parallel search
- WordPress get_ Users() returns all users with comparison queries - PHP
- string. Format without decimal places will generate unexpected rounding - C #
- Unity write word
- Common components of flask
- MySQL中的文本處理函數整理,收藏速查
- Group programming ladder race - exercise set l1-006 continuity factor
- 墨者学院-PHPMailer远程命令执行漏洞溯源
- Ecole bio rushes to the scientific innovation board: the annual revenue is 330million. Honghui fund and Temasek are shareholders
- This article is enough for learning advanced mysql
猜你喜欢
Linear algebra 1.1
Azure ad domain service (II) configure azure file share disk sharing for machines in the domain service
【Go基础】2 - Go基本语句
1. Kalman filter - the best linear filter
弈柯莱生物冲刺科创板:年营收3.3亿 弘晖基金与淡马锡是股东
Système de surveillance zabbix contenu de surveillance personnalisé
Wechat has new functions, and the test is started again
Book list | as the technical support Party of the Winter Olympics, Alibaba cloud's technology is written in these books!
Heap concept in JVM
Flask 常用组件
随机推荐
MySQL中的文本處理函數整理,收藏速查
OKR vs. KPI figure out these two concepts at once!
ZABBIX monitoring system custom monitoring content
Relations courantes de la fiche de données d'exploitation pour les activités
How to send mail with Jianmu Ci
[Gurobi] 简单模型的建立
zabbix监控系统部署
Need help resetting PHP counters - PHP
Use preg_ Match extracts the string into the array between: & | people PHP
Group programming ladder race - exercise set l2-002 linked list de duplication
C # implements a queue in which everything can be sorted
Flask 常用组件
L1-024 the day after tomorrow (5 points)
Oceanbase is the leader in the magic quadrant of China's database in 2021
How to set multiple selecteditems on a list box- c#
BUUCTF(3)
弈柯莱生物冲刺科创板:年营收3.3亿 弘晖基金与淡马锡是股东
OKR vs. KPI 一次搞清楚这两大概念!
Book list | as the technical support Party of the Winter Olympics, Alibaba cloud's technology is written in these books!
Sort by item from the list within the list - C #