什么时候应该使用完整的恢复模型,什么时候应该对数据库使用简单的恢复模型?
我总是使用完整的恢复模型,因为它是默认的,但是今天我遇到了以下错误:
(0x80040E14)数据库“数据库名称”的事务日志已满。若要了解日志中空间不能重用的原因,请参阅sys.databases中的sys.databases列。
具体的数据库实际上是我的服务器上最小和最不活跃的数据库之一,所以我不知道日志如何能满在这个数据库上,而不知道其他的数据库。
为了缩小日志并使数据库再次可访问,我将恢复模型从完整更改为简单,并使用以下命令缩小了逻辑文件日志
alter database myDbName SET recovery
在我的团队ASP.NET应用程序的数据访问层中,我通过使用.NET SQLClient对数据库运行存储过程。在添加新代码以允许在数据库上执行插入操作后,我测试了该代码,并收到以下异常:
The transaction log for database 'DBName' is full. To find out why space in the log cannot be reused, see the log_reuse_wait_desc column in sys.databases
我验证了在尝试从MS SQL Server Management Studio中执行插入操
有一个数据库,它与它一起工作之前知道。知道此数据库(ms sql数据库)处于InRecovery模式。在此模式下,当我可以在SQL Server Management Studio中看到它,但我无法执行其他任何操作时。这意味着我看不到表,我看不到每个表的数据,...抽象地说,数据库名称旁边的加号按钮不存在。你还可以猜到我做不到的其他事情。这个问题是从哪里来的?以及我如何解决这个问题。(注意:我没有此数据库的任何备份)
我不小心在Windows 8上安装了Ubuntu13.04,当时我正在尝试双启动。我有一个分区(973 had ),其中有带有NTFS文件系统的窗口。但是,由于ubuntu的意外安装,文件系统已更改为ext4。
当我尝试testdisk时,它向我展示了三个分区:
P EFI系统(数据非常少)
P数据(大磁盘约950 of )。我认为这个分区拥有所有的数据)
P Linux交换(与我的ram大小相同)
现在,当我尝试搜索时,它显示分区MS数据无法恢复。我不需要隔板或windows 8。我只需要一些被删除的重要文件。我能恢复这些文件吗?请帮帮忙。