SQL Server 在运用过程会产生大量的日志造成日志文件不断增长,但实际上有效的日志只占据10%不足的空间。无效的日志未能及时被清理,而导致占据日志文件空间引起日志文件膨胀。日志文件在膨胀后,如过不实施维护操作并无法自动缩小。数据库收缩将会收到恢复模式设置差异,它们差异参考如下:简单模式收缩: 将所有的提交完成(或者说所有有效的日志)都可以删除。重新定位到新的日志之初。完整模式收缩: 保留有效            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-31 19:15:10
                            
                                782阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            -- 清空日志   
     --压缩日志及数据库文件大小   
       
     /*--特别注意   
     请按步骤进行,未进行前面的步骤,请不要做后面的步骤   
     否则可能损坏你的数据库. &nbs            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-27 16:21:36
                            
                                644阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # SQL Server 收缩数据库的实现
在数据库管理中,收缩数据库是一个常见的任务。它可以帮助我们释放不再使用的磁盘空间。作为一名刚入行的小白,今天我将带你了解如何在 SQL Server 中收缩数据库的基本操作。
## 1. 流程概述
在进行数据库收缩之前,我们需要了解收缩的基本流程。以下是进行数据库收缩的步骤总结表格:
| 步骤        | 描述            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-09-28 05:54:44
                            
                                88阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # SQL Server收缩数据库操作指南
在日常数据库管理中,数据库收缩是一个常见的任务。随着数据的增加,数据库文件可能会变得越来越大。如果不再需要这些空间,我们可以通过收缩操作来释放它。本文将介绍SQL Server中的收缩数据库操作,以及如何使用相关的SQL语句来实现这一过程。
## SQL Server收缩数据库的原理
在SQL Server中,数据库收缩操作涉及到将数据库的物理文件            
                
         
            
            
            
            1. 数据库的相关属性2. 为何数据库需要收缩?3. 如何收缩数据库? 
     
    1. 数据库的相关属性在MS中创建数据库时会为数据库分配初始的大小(如下图:数据库和日志两个文件),随着数据库的使用文件会逐渐增大。数据库文件大小的增加有两种方式:自动增长:在自动增长中可以设置每次的增长量,以及最大增长的文件大小。手动增长:取消“启用自动增长”则为手动增长,这就需要DBA经常观测数据            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-26 15:47:25
                            
                                238阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            日志文件满而造成SQL数据库无法写入文件时,可用两种方法:  一种方法:清空日志。  1.打开查询分析器,输入命令  DUMP TRANSACTION 数据库名 WITH NO_LOG  2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。  另一种方法            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-05 15:49:25
                            
                                544阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            /*--特别注意 
 请按步骤进行,未进行前面的步骤,请不要做后面的步骤 
 否则可能损坏你的数据库. 
 --*/ 
 1.清空日志 
 DUMP TRANSACTION 库名 WITH NO_LOG 
 2.截断事务日志: 
 BACKUP LOG 数据库名 WITH NO_LOG 
 3.收缩数据库文件(如果不压缩,数据库的文件不会减小 
 企业管理            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-03 22:44:46
                            
                                279阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            大家关注下我,我会慢慢给大家更新更多IT方面的博文            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2018-01-29 18:11:40
                            
                                3238阅读
                            
                                                        
                                点赞
                            
                                                                             
                 
                
                             
         
            
            
            
            数据库中的每个文件都可以通过删除未使用的页的方法来减小。尽管数据库引擎会有效地重新使用空间,但某个文件多次出现无需原来大小的情况后,收缩文件就变得很有必要了。数据和事务日志文件都可以减小(收缩)。可以成组或单独地手动收缩数据库文件,也可以设置数据库,使其按照指定的间隔自动收缩。
文件始终从末尾开始收缩。例如,如果有个 5 GB 的文件,并且在 DBCC SHRINKFILE 语句中将 tar            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-28 13:58:36
                            
                                50阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            停服务方案(1)站点挂一个公告“为了为广大用户提供更好的服务,本站点/游戏将在今晚00:00-2:00之间升级,届时将不能登录,用户周知”(2)停服务(3)新建y个库,做好高可用(4)数据迁移,重新分布,写一个数据迁移程序,从x个库里导入到y个库里,路由规则由%x升级为%y(5)修改服务配置,原来x行配置升级为y行(6)重启服务,连接新库重新对外提供服务整个过程中,最耗时的是第四步数据迁移。回滚方            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-16 21:59:52
                            
                                216阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、清除日志 在清除之前,建议先做数据库完全备份。然后在查询分析器中执行语句: backup log 数据库名 with no_log dbcc shrinkdatabase('数据库名',truncateonly) 清除后,日志文件一般只剩余1024k。您可以根据需要,周期性手工执行该语句来清除日志文件。   二、收缩数据库文件(如果不压缩,数据库的文件不会减小 1、打开企业管理器 2、展开服务            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-25 10:48:00
                            
                                48阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            SQL数据库收缩日志
declare @name varchar(25)
declare @sql varchar(1000)
declare @logid int
DECLARE sdys cursor for select /*top 5 部分处理*/ name from master.dbo.sysdatabases
open sdys
FETCH NEXT FROM s            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2011-02-13 12:28:02
                            
                                704阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            BACKUP LOG [数据库名称] TO DISK = 'nul'DBCC SHRINKFILE('[数据库名称]_Log',4096)            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2019-09-01 21:06:58
                            
                                1685阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # SQL SERVER 数据库收缩实现指南
## 概述
在开发过程中,数据库收缩是一个常见的操作。它可以帮助我们优化数据库的性能,减少数据库文件的大小,并提高查询和存储的效率。本文将介绍如何在 SQL SERVER 中实现数据库收缩操作,并提供详细的步骤和代码示例。
## 数据库收缩流程
下面是实现数据库收缩的基本流程,我们可以用表格形式展示出来:
| 步骤 | 操作 |
| --- |            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-12-20 07:26:26
                            
                                315阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # SQL Server 收缩数据库教程
## 引言
在使用 SQL Server 进行数据存储的过程中,数据库文件可能会变得很大,占用过多的磁盘空间。为了节约资源和提高性能,我们需要定期收缩数据库。本文将教你如何实现 SQL Server 收缩数据库的步骤和代码。
## 流程图
```mermaid
flowchart TD
    A(开始)
    B(连接到 SQL Server)            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-12-24 06:38:35
                            
                                126阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Exec sp_spaceused;
 
 
ALTER DATABASE HKMNewsDB MODIFY FILE ( NAME = N'HKMNewsDB', SIZE = 310390MB );
 
DBCC SHRINKDATABASE(tempdb,1) ;
DBCC SHRINKFILE(1,TRUNCATEONLY);
DBCC SHRINKFILE(1,238238);
 
 
            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-04-14 17:07:37
                            
                                1541阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            SQL Server收缩数据库Exec sp_spaceused;
 
 
ALTER DATABASE HKMNewsDB MODIFY FILE ( NAME = N'HKMNewsDB', SIZE = 310390MB );
 
DBCC SHRINKDATABASE(tempdb,1) ;
DBCC SHRINKFILE(1,TRUNCATEONLY);
DBCC SHRINKFILE(            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-04-16 21:17:59
                            
                                1186阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            --压缩日志及数据库文件大小 
/*--特别注意 
请按步骤进行,未进行前面的步骤,请不要做后面的步骤 
否则可能损坏你的数据库. 
--*/ 
1.清空日志 
DUMP     TRANSACTION     库名     WITH     NO_LOG         
2.截断事务日志: 
BACKUP   LOG   数据库名   WITH   NO_LOG 
3.收缩数据库文件(            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-23 23:49:24
                            
                                692阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             数据库出问题的过程:数据库体积很大,分两个文件,共40多G,没有启动完整日志,用的是简单日志。经过几次非法关机重启,数据库状态被标为可疑,无法使用。为了尽量减少损失,没有采取还原备份的方式,想办法恢复此数据库。按照下面的步骤解决了状态为可疑的问题:USE MASTER 
GO 
SP_CONFIGURE ‘ALLOW UPDATES’,1 RECONFIGURE WITH OVERRI            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-16 16:08:35
                            
                                68阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在日常运维中,有时会遇到“The transaction log for database ‘xxxx’ is full due to ‘ACTIVE_TRANSACTION’.”这样的报错信息。 此错误消息表明:数据库的事务日志文件空间耗尽,log 文件不能再存储新的transaction log。 这个时候我们需要进行日志收缩。本文将介绍日志收缩的两种方法。通过图形界面进行日志收缩第一步:右键            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-28 14:11:26
                            
                                501阅读
                            
                                                                             
                 
                
                                
                    