Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Sql сървър - регистрационният файл е пълен поради ACTIVE_TRANSACTION

Ето какво в крайна сметка направих, за да заобиколя грешката.

Първо, настроих модела за възстановяване на база данни като ПРОСТ. Повече информация тук .

След това, като изтрих някои стари файлове, успях да направя 5 GB свободно пространство, което даде на регистрационния файл повече място за разрастване.

Повторно изпълних командата DELETE успешно без никакво предупреждение.

Мислех, че като изпълня оператора DELETE, базата данни незабавно ще стане по-малка, като по този начин ще освободи място в моя твърд диск. Но това не беше вярно. Мястото, освободено след командата DELETE, не се връща незабавно към операционната система, освен ако не изпълните следната команда:

DBCC SHRINKDATABASE (MyDb, 0);
GO

Повече информация за тази команда тук .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да емулирам тригер BEFORE DELETE в SQL Server 2005

  2. Рекурсивна заявка за намиране на родителския запис

  3. Намерете липсващи времеви интервали в таблица

  4. SQL заявка за търсене в схема на всички таблици

  5. MS SQL сравняване на дати?