在用sql语句删除表中的数据时,怎么做可以不让日志记录

在用sql语句删除表中的数据时,怎么做可以不让日志记录,第1张

禁掉ldf文件

1。对表进行TRUNCATE TABLE *** 作

2。在Simple Recvery Mode下的 SELECT INTO, BCP (Bulk Insert/Bulk Update), CREATE INDEX 以及对于Text/Image数据类型 等的 *** 作。

3。如果使用Full Recovery Mode,所有的 *** 作都将会被记录(还包括数据库备份等)

我觉得在使用大量的删除插入语句的时候如果不想让DB记录log,应该可以在执行语句前执行下列语句将日志记录方式改为simple

ALTER DATABASE [CSMCISA] SET RECOVERY simple

GO

然后在执行完成后再将数据库的日志记录方式改过来就行了,如果不放心就写再事务中,确保日志记录方式不会因为我们的 *** 作而改变.

ALTER DATABASE [CSMCISA] SET RECOVERY full/bulk_logged

GO

一、首先删除归档日志物理文件,归档日志一般都是位于archive目录下,AIX系统下文件格式为“1_17884_667758186.dbf”,建议 *** 作前先对数据库进行备份,删除时至少保留最近几天的日志用于数据库恢复。二、把归档日志的物理文件删除后,我们就可以正常登入ORACLE了,但是还没完全把归档日志删除干净,ORACLE的controlfile中仍然记录着这些archivelog的信息,在oracle的OEM管理器中有可视化的日志展现出,当我们手工清除archive目录下的文件后,这些记录并没有被我们从controlfile中清除掉,接下去我们要做的就是这个工作。我们利用RMAN进行删除 *** 作, *** 作步骤如下:(window客户端系统为例)1.指定数据库实例C:/DocumentsandSettings/Administrator>SETORACLE_SID=orcl2.连接数据库C:/DocumentsandSettings/Administrator>RMANTARGETSYS/sysadmin@orcl3.查看归档日志的状态RMAN>listarchivelogall4.手工删除归档日志文件RMAN>DELETEARCHIVELOGALLCOMPLETEDBEFORE'SYSDATE-7'说明:SYSDATA-7,表明当前的系统时间7天前,before关键字表示在7天前的归档日志,如果使用了闪回功能,也会删除闪回的数据。同样道理,也可以删除从7天前到现在的全部日志,不过这个命令要考虑清楚,做完这个删除,最好马上进行全备份数据库DELETEARCHIVELOGfromTIME'SYSDATE-7'删除从7天前到现在的全部日志,慎用UNIX/LINUX下也可以通过FIND找到7天前的归档数据,使用EXEC子 *** 作删除find/oraarchive-xdev-mtime+7-name"*.dbf"-execrm-f{}这样做仍然会在RMAN里留下未管理的归档文件仍需要在RMAN里执行下面2条命令crosscheckarchivelogalldeleteexpiredarchivelogall所以还不如上面的方法好用,不过用FIND的好处就是,可以在条件上,和EXEC子项上做很多 *** 作,实现更复杂的功能5.退出rmanRMAN>exit

方法1:使用LogMiner工具

优点:可以完全挖掘日志内容,找出所有执行过的SQL语句

缺点:

1. 如果没有启用归档日志,则只能对联机日志进行挖掘

2. 需要掌握LogMiner的用法

访法2:查看HIST视图

优点:简单,只要使用普通的select语句查询

缺点:Oracle保留约1周的历史,所以要查太早的就不可能了

-- 找出哪个数据库用户用什么程序在最近三天执行过delete或truncate table的 *** 作

举例如下:

SELECT c.username,

a.program,

b.sql_text,

b.command_type,

a.sample_time

FROM dba_hist_active_sess_history a

JOIN dba_hist_sqltext b

ON a.sql_id = b.sql_id

JOIN dba_users c

ON a.user_id = c.user_id

WHERE a.sample_time BETWEEN SYSDATE - 3 AND SYSDATE

AND b.command_type IN (7, 85)

ORDER BY a.sample_time DESC


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6659694.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存