错将数据库表导入到system用户下,现在新建用户再导库会出现很多无效对象 system用户 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 数据库是否开启了闪回尝试闪回数据库到导入前的状态数据库闪回(Flashback Database)闪回数据库可以迅速的使数据库回到误操作或人为错误的前一个时间点,如实际中的“撤消”操作,将可以不利用备份就快速地实现时间点的恢复。实际上,Oracle为了实现这一个功能,创建了另外一组日志,就是Flashback Logs(前滚日志),记录数据库的前滚操作。Flashback Database的前提条件:(1)数据库必须处于ARCHIVELOG模式(2)数据库必须具有flash recovery area,为此需要设置如下参数:Ÿ DB_RECOVER_FILE_DEST:确定Flashback日志的存放地点Ÿ DB_RECOVER_FILE_DEST_SIZE:确定Flashback日志恢复区的大小Ÿ DB_FLASHBACK_RETENTION_TARGET:设定闪回数据的保存时间,单位是分钟。默认是1440分钟(一天)(3)对于RAC数据库,flash recovery area必须存储在集群文件系统或ASM内 常见flashback database命令SQL> flashback databaseto timestamp to_date(xxx);SQL> flashback database to timestampTO_TIMESTAMP (xxx);SQL> flashback database to scnxxx;SQL> flashback database to sequencexxx thread 1SQL> flashback databaseto timestamp(sysdate-1/24) 例子:(1)启用flashback log和归档模式SQL> shutdown immediateSQL> startup mount;SQL> alter database archivelogSQL> alter database flashbackon;SQL> alter database open; (2)获取当前的SCNSQL> select current_scn from v$database; -- 查看当前的SCN CURRENT_SCN-----------1237617 (3)模拟故障(截断scott.emp) SQL> truncate table scott.emp; (4)完成FLASHBACKDATABASE(必须在mount状态下) SQL> shutdown immediate SQL> startup mount; SQL> flashback database to scn1237617; (5)使用resetlogs方式打开数据库SQL> alter database open resetlogs; (6)测试flashbackdatabase是否成功SQL> conn scott/tigerSQL> select * from emp; SQL> alter database flashback on;alter database flashback on*第 1 行出现错误:ORA-38759: 数据库必须仅由一个实例装载并且不能打开。 没有开启闪回的话,后面就不用看了system用户下应该都是数据库系统需要的东西,重建实例,使用新实例的数据文件应该也可以百度下oracle冷备份与恢复1、查询并记录数据库的主要参数2、关闭oracle服务,做好冷备份3、删除重建数据库实例,重建时参数保持和之前的数据库参数一致4、使用冷备份进行恢复,恢复是system的相关文件就不用恢复了,使用新生成的数据文件5、重起oracle服务,测试是否可用注意:处理前做好备份工作,以免数据丢失 SQL> flashback database to timestamp to_timestamp('2014-11-03 10:01:01','YYYY-MM-DD HH:MI:SS');flashback database to timestamp to_timestamp('2014-11-03 10:01:01','YYYY-MM-DD HH:MI:SS')*第 1 行出现错误:ORA-38729: 执行 FLASHBACK 的闪回数据库日志数据不足。 关于权限和角色的问题 tomcat+oracle报错 怎样让数据文件脱机 【求教】使用sqlplus创建函数 问一个有关取最大值的函数 请教一条pl/sql语句 求一个视图创建语句 请教imp的用法,只导入部分数据 在oracle能不能把Table中的两个字段xing 和 ming组合成一个字段显示出来! 请问存储过程如何返回一个结果集?望指点一二 求解oracle监听服务名问题 同事执行两个SQL语句要用什么连接
尝试闪回数据库到导入前的状态
数据库闪回(Flashback Database)
闪回数据库可以迅速的使数据库回到误操作或人为错误的前一个时间点,如实际中的“撤消”操作,将可以不利用备份就快速地实现时间点的恢复。实际上,Oracle为了实现这一个功能,创建了另外一组日志,就是Flashback Logs(前滚日志),记录数据库的前滚操作。Flashback Database的前提条件:(1)数据库必须处于ARCHIVELOG模式(2)数据库必须具有flash recovery area,为此需要设置如下参数:Ÿ DB_RECOVER_FILE_DEST:确定Flashback日志的存放地点Ÿ DB_RECOVER_FILE_DEST_SIZE:确定Flashback日志恢复区的大小Ÿ DB_FLASHBACK_RETENTION_TARGET:设定闪回数据的保存时间,单位是分钟。默认是1440分钟(一天)(3)对于RAC数据库,flash recovery area必须存储在集群文件系统或ASM内 常见flashback database命令SQL> flashback databaseto timestamp to_date(xxx);SQL> flashback database to timestampTO_TIMESTAMP (xxx);SQL> flashback database to scnxxx;SQL> flashback database to sequencexxx thread 1SQL> flashback databaseto timestamp(sysdate-1/24) 例子:(1)启用flashback log和归档模式SQL> shutdown immediateSQL> startup mount;SQL> alter database archivelogSQL> alter database flashbackon;SQL> alter database open; (2)获取当前的SCNSQL> select current_scn from v$database; -- 查看当前的SCN CURRENT_SCN-----------1237617 (3)模拟故障(截断scott.emp) SQL> truncate table scott.emp; (4)完成FLASHBACKDATABASE(必须在mount状态下) SQL> shutdown immediate SQL> startup mount; SQL> flashback database to scn1237617; (5)使用resetlogs方式打开数据库SQL> alter database open resetlogs; (6)测试flashbackdatabase是否成功SQL> conn scott/tigerSQL> select * from emp;
alter database flashback on
*
第 1 行出现错误:
ORA-38759: 数据库必须仅由一个实例装载并且不能打开。
system用户下应该都是数据库系统需要的东西,重建实例,使用新实例的数据文件应该也可以百度下oracle冷备份与恢复
1、查询并记录数据库的主要参数
2、关闭oracle服务,做好冷备份
3、删除重建数据库实例,重建时参数保持和之前的数据库参数一致
4、使用冷备份进行恢复,恢复是system的相关文件就不用恢复了,使用新生成的数据文件
5、重起oracle服务,测试是否可用
注意:处理前做好备份工作,以免数据丢失
flashback database to timestamp to_timestamp('2014-11-03 10:01:01','YYYY-MM-DD HH:MI:SS')
*
第 1 行出现错误:
ORA-38729: 执行 FLASHBACK 的闪回数据库日志数据不足。