Three methods to quickly recover accidentally deleted Oracle database
This article brings you relevant knowledge about Oracle, which mainly introduces how to quickly delete data in the Oracle database without considering the full database backup and archive log utilization. Let’s take a look at the related issues of recovering data. I hope it will be helpful to everyone.
Recommended tutorial: "Oracle Video Tutorial"
Deleting data in the oracle database by mistake without considering all How to quickly restore data when using database backup and archive logs?
The following are 3 methods.
1. Use the flashback method provided by Oracle for data recovery, which is suitable for delete deletion method
First obtain the time point of deleted data:
select * from v$sql where sql_text like '%table_name%' ; 1
According to the sql_text
content in the result, find the delete time point
corresponding to the delete execution statement, and execute the following statement to query the deleted data.
select * from table_name as of timestamp to_timestamp(‘删除时间点’,‘yyyy-mm-dd hh24:mi:ss’) where (删除时的条件) 12
After checking that the data is correct, perform the following operations to insert the data back into the original table. Note that the primary key is not repeated
insert into table_name select * from from table_name as of timestamp to_timestamp(‘删除时间点’,‘yyyy-mm-dd hh24:mi:ss’) where (删除时的条件) 123
2. Use the oracle virtual recycle bin function
The principle is because the oracle database will delete the information when deleting the table It is stored in a virtual recycle bin instead of being emptied directly. In this state, the database marks the table as can be copied, so the block has not been reused. Data can still be recovered before . This method is mostly used for drop deletion.
First query the user_table
view to find the deleted table:
select table_name,dropped from user_tables; select object_name,original_name,type,droptime from user_recyclebin; 12
Note at this time, object_name
and original_name
It is the name of the table stored in the recycle bin and the name of the originally deleted table. If the table name has not been renamed, you can restore it through the following statement:
flashback table original_name to before drop; 1
If you do not know the source table name, or you need to rename the new If the data is stored in the table name of the recycle bin, it can be restored through object_name
in the recycle bin. The command is as follows:
flashback table object_name to before drop new_table_name; 1
3. Use the flashback function of the oracle database to restore the database to A certain state in the past
Note that this is whole database recovery, the specific syntax is as follows:
SQL>alter database flashback on SQL>flashback database to scn SCNNO; SQL>flashback database to timestamp to_timestamp(‘frombyte 2021-09-02 23:59:59’,‘yyyy-mm-dd hh24:mi:ss’); 123
4. Completely delete data
If we determine the data that needs to be deleted and do not want to occupy space unnecessarily, we can use the following three methods:
- Truncate using the truncate method. (Data recovery is not possible)
- Add the purge option when dropping:
drop table table_name purge
- Make it permanent by deleting the
recyclebin
area Delete the table,drop table table_name cascade constraints purge table table_name;
##5. About emptying the recycle bin
- Delete the current user’s recycle bin
purge recyclebin;
- Delete all users’ data in the recycle bin
purge dba_recyclebin;
## Recommended tutorial: "
The above is the detailed content of Three methods to quickly recover accidentally deleted Oracle database. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Oracle View Encryption allows you to encrypt data in the view, thereby enhancing the security of sensitive information. The steps include: 1) creating the master encryption key (MEk); 2) creating an encrypted view, specifying the view and MEk to be encrypted; 3) authorizing users to access the encrypted view. How encrypted views work: When a user querys for an encrypted view, Oracle uses MEk to decrypt data, ensuring that only authorized users can access readable data.

Uninstall method for Oracle installation failure: Close Oracle service, delete Oracle program files and registry keys, uninstall Oracle environment variables, and restart the computer. If the uninstall fails, you can uninstall manually using the Oracle Universal Uninstall Tool.

Deleting all data in Oracle requires the following steps: 1. Establish a connection; 2. Disable foreign key constraints; 3. Delete table data; 4. Submit transactions; 5. Enable foreign key constraints (optional). Be sure to back up the database before execution to prevent data loss.

Oracle Invalid numeric errors may be caused by data type mismatch, numeric overflow, data conversion errors, or data corruption. Troubleshooting steps include checking data types, detecting digital overflows, checking data conversions, checking data corruption, and exploring other possible solutions such as configuring the NLS_NUMERIC_CHARACTERS parameter and enabling data verification logging.

Solutions to Oracle cannot be opened include: 1. Start the database service; 2. Start the listener; 3. Check port conflicts; 4. Set environment variables correctly; 5. Make sure the firewall or antivirus software does not block the connection; 6. Check whether the server is closed; 7. Use RMAN to recover corrupt files; 8. Check whether the TNS service name is correct; 9. Check network connection; 10. Reinstall Oracle software.

Oracle database paging uses ROWNUM pseudo-columns or FETCH statements to implement: ROWNUM pseudo-columns are used to filter results by row numbers and are suitable for complex queries. The FETCH statement is used to get the specified number of first rows and is suitable for simple queries.

The method to solve the Oracle cursor closure problem includes: explicitly closing the cursor using the CLOSE statement. Declare the cursor in the FOR UPDATE clause so that it automatically closes after the scope is ended. Declare the cursor in the USING clause so that it automatically closes when the associated PL/SQL variable is closed. Use exception handling to ensure that the cursor is closed in any exception situation. Use the connection pool to automatically close the cursor. Disable automatic submission and delay cursor closing.

In Oracle, the FOR LOOP loop can create cursors dynamically. The steps are: 1. Define the cursor type; 2. Create the loop; 3. Create the cursor dynamically; 4. Execute the cursor; 5. Close the cursor. Example: A cursor can be created cycle-by-circuit to display the names and salaries of the top 10 employees.
