1.被锁表的解锁
select 'alter system kill session ',''''||trim(t2.sid)||','||trim(t2.serial#)||''';'
from v$locked_object t1,v$session t2 where t1.session_id=t2.sid order by t2.logon_time;
alter system kill session '890,33995';
2.误删除表数据删除的恢复
确定删除数据的时间(在删除数据之前的时间就行,不过最好是删除数据的时间点)
*用以下语句找出删除的数据:select * from 表名 as of timestamp to_timestamp('删除时间点','yyyy-mm-dd hh24:mi:ss')
*把删除的数据重新插入原表:
insert into 表名 (select * from 表名 as of timestamp to_timestamp('删除时间点','yyyy-mm-dd hh24:mi:ss'));注意要保证主键不重复。
如果表结构没有发生改变,还可以直接使用闪回整个表的方式来恢复数据。
表闪回要求用户必须要有flash any table权限
--开启行移动功能
·alter table 表名 enable row movement
--恢复表数据
·flashback table 表名 to timestamp to_timestamp(删除时间点','yyyy-mm-dd hh24:mi:ss')
--关闭行移动功能 ( 千万别忘记 )
·alter table 表名 disable row movement
参考来自:http://www.cnblogs.com/hqbhonker/p/3977200.html
3.倒入到处,exp,imp数据
导出
1、完全:
EXP SYSTEM/SYSTEM@ORCL FILE=C:\FULL.DMP LOG=C:\FULL.DMP.LOG FULL=Y BUFFER=819200
如果要执行完全导出,必须具有特殊的权限
2、用户模式:
EXP SONIC/SONIC@ORCL FILE=C:\SONIC.DMP LOG=C:\SONIC.DMP.LOG OWNER=SONIC BUFFER=819200
这样用户SONIC的所有对象被输出到文件中。
3、表模式:
EXP SONIC/SONIC@ORCL FILE=C:\SONIC.DMP LOG=C:\SONIC.DMP.LOG OWNER=SONIC BUFFER=819200 TABLES=(TABLE1,TABLE2,TABLE3)
这样用户SONIC的表SONIC就被导出
导入
1、完全:
IMP SYSTEM/MANAGER@ORCL FILE=C:\FULL.DMP LOG=C:\FULL.DMP.LOG FULL=Y IGNORE=Y BUFFER=819200
2、用户模式:
IMP SONIC/SONIC@ORCL FILE=C:\SONIC.DMP LOG=C:\SONIC.DMP.LOG FROMUSER=SONIC TOUSER=SONIC FULL=Y IGNORE=Y BUFFER=819200
这样用户SONIC的所有对象被导入到文件中。必须指定FROMUSER、TOUSER参数,这样才能导入数据。
3、表模式:
IMP SONIC/SONIC@ORCL FILE=C:\SONIC.DMP LOG=C:\SONIC.DMP.LOG OWNER=SONIC IGNORE=Y TABLES=(TABLE1,TABLE2,TABLE3)
这样用户SONIC的表SONIC就被导入。
http://www.cnblogs.com/hqbhonker/tag/Oracle/