请问有什么办法在数据导入导出时不让SQLServer生成日志?

时间:2022-06-26 19:45:20
需要频繁地导入导出大量的数据,但是数据库日志文件的增长实在是太快了,求好的解决办法,谢谢!

6 个解决方案

#1


--设置最小日志记录
alter database 数据库 set recovery simple

--进入数据导入/导出


--完成后恢复日志记录模式
alter database 数据库 set recovery full

#2


alter database 数据库 set recovery simple
日志文件還會變大,但是空的. 只用縮日志,就會變為0

#3


不要采用alter database 数据库 set recovery simple,这样可能会导致你的备份策略的失效,因为simple recovery与full recovery model之间不能随意切换,除非你在切换前做好一个全库备份.另外采用了simple recovery的话,事务日志备份就不能采用.综合上述,不提倡使用simple recovery model.而应该使用bulk log recovery model.
步骤:
  1 导入之前,alter database 数据库 set bulk_logged
    ( 或者exec sp_dboption '数据库','select into/bulkcopy',true)
  2 导入结束,alter database 数据库 set full;
  这样你无需调整备份策略,那么为了安全起见,导入结束后可以补做一次备份,因为你导入过程没有记录在事务日志中.

#4


楼上的朋友,我用simple recovery model用的很好呀

#5


不要采用alter database 数据库 set recovery simple,这样可能会导致你的备份策略的失效,因为simple recovery与full recovery model之间不能随意切换,除非你在切换前做好一个全库备份.另外采用了simple recovery的话,事务日志备份就不能采用.综合上述,不提倡使用simple recovery model.而应该使用bulk log recovery model.
步骤:
  1 导入之前,alter database 数据库 set recovery bulk_logged
    ( 或者exec sp_dboption '数据库','select into/bulkcopy',true)
  2 导入结束,alter database 数据库 set recovery full;
  这样你无需调整备份策略,那么为了安全起见,导入结束后可以补做一次备份,因为你导入过程没有记录在事务日志中.

#6


如果你不恢复数据库,你是不会发现备份的问题的!你直接在simple/bulk logged之间切换,是不会报错的.但是当你利用事务日志恢复的时候,就会报错.因为simple/bulk logged之间是有缝切换.

#1


--设置最小日志记录
alter database 数据库 set recovery simple

--进入数据导入/导出


--完成后恢复日志记录模式
alter database 数据库 set recovery full

#2


alter database 数据库 set recovery simple
日志文件還會變大,但是空的. 只用縮日志,就會變為0

#3


不要采用alter database 数据库 set recovery simple,这样可能会导致你的备份策略的失效,因为simple recovery与full recovery model之间不能随意切换,除非你在切换前做好一个全库备份.另外采用了simple recovery的话,事务日志备份就不能采用.综合上述,不提倡使用simple recovery model.而应该使用bulk log recovery model.
步骤:
  1 导入之前,alter database 数据库 set bulk_logged
    ( 或者exec sp_dboption '数据库','select into/bulkcopy',true)
  2 导入结束,alter database 数据库 set full;
  这样你无需调整备份策略,那么为了安全起见,导入结束后可以补做一次备份,因为你导入过程没有记录在事务日志中.

#4


楼上的朋友,我用simple recovery model用的很好呀

#5


不要采用alter database 数据库 set recovery simple,这样可能会导致你的备份策略的失效,因为simple recovery与full recovery model之间不能随意切换,除非你在切换前做好一个全库备份.另外采用了simple recovery的话,事务日志备份就不能采用.综合上述,不提倡使用simple recovery model.而应该使用bulk log recovery model.
步骤:
  1 导入之前,alter database 数据库 set recovery bulk_logged
    ( 或者exec sp_dboption '数据库','select into/bulkcopy',true)
  2 导入结束,alter database 数据库 set recovery full;
  这样你无需调整备份策略,那么为了安全起见,导入结束后可以补做一次备份,因为你导入过程没有记录在事务日志中.

#6


如果你不恢复数据库,你是不会发现备份的问题的!你直接在simple/bulk logged之间切换,是不会报错的.但是当你利用事务日志恢复的时候,就会报错.因为simple/bulk logged之间是有缝切换.