⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sqlserver_logfile.sql

📁 SQL server由于应用程序不够优问题,导致日志文件太大.这是解决这个问题的方法和脚本.
💻 SQL
字号:
--数据库日志满处理步骤(业务库)

--原因:通常是由于通信执行错误导致日志增长。

--步骤:1. 关闭通信和系统。

--2. 将recive文件夹里的文件备份起来然后删除原文件。

--3. 收缩日志文件,按如下步骤逐步执行。

--3.1.终止数据库用户进程
  use master  
  declare   @dbname   varchar(200)
  declare   @sql   nvarchar(500)     
  declare   @spid   nvarchar(20)   
  set	    @dbname='dbname'   --要断开连接的库名
  declare   #tb   cursor   for   
  select   spid=cast(spid   as   varchar(20))   from   master..sysprocesses   where   dbid=db_id(@dbname)   
  open   #tb   
  fetch   next   from   #tb   into   @spid   
  while   @@fetch_status=0   
  begin     
  exec('kill   '+@spid)   
  fetch   next   from   #tb   into   @spid   
  end     
  close   #tb   
  deallocate   #tb

--3.2.分离数据库
  sp_detach_db N'dbname', N'true'

--3.3.附加数据库
  sp_attach_db N'dbname' , N'D:\data\dbname.mdf', N'D:\data\dbname.ldf'
  dbname..sp_changedbowner 'sa', false --所有者改为sa,false表示除去旧数据库所有者的现有别名。

--3.4.收缩日志文件
 use dbname
 DBCC SHRINKFILE (N'dbname_log',TRUNCATEONLY) --TRUNCATEONLY将文件收缩到上一次分配的大小
----select * from sysfiles --查看文件名 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -