zoukankan      html  css  js  c++  java
  • MSSQL清理所有用户数据库日志(SQLSERVER2008)

    USE [master];
    SET NOCOUNT ON;
    
    DECLARE @tbName VARCHAR(50)='';
    DECLARE @tbLog VARCHAR(100)='';
    DECLARE @clearSql VARCHAR(MAX)='';
    
    DECLARE @TMP_WHILE_ID INT=0;
    SELECT TMP_WHILE_ID=IDENTITY(INT,1,1),TMP_WHILE_FLAG=0,
    T.tbName,T.tbLog
    INTO #TMP_WHILE
    FROM
    (
    SELECT master.sys.databases.name AS tbName, master.sys.master_files.name AS tbLog
    FROM master.sys.master_files INNER JOIN master.sys.databases ON master.sys.master_files.database_id = master.sys.databases.database_id
    WHERE (master.sys.databases.owner_sid <> 0x01) AND (master.sys.master_files.type = 1)
    ) AS T
    
    SELECT @TMP_WHILE_ID=MIN(TMP_WHILE_ID) FROM #TMP_WHILE WHERE TMP_WHILE_FLAG=0;
    WHILE @TMP_WHILE_ID IS NOT NULL
    BEGIN
        SELECT @tbName=tbName,@tbLog=tbLog FROM #TMP_WHILE WHERE TMP_WHILE_ID=@TMP_WHILE_ID;
        
        SET @clearSql=@clearSql+'USE [master];'+CHAR(10);
        SET @clearSql=@clearSql+'ALTER DATABASE ['+@tbName+'] SET RECOVERY SIMPLE WITH NO_WAIT;'+CHAR(10);
        SET @clearSql=@clearSql+'ALTER DATABASE ['+@tbName+'] SET RECOVERY SIMPLE;'+CHAR(10);
        SET @clearSql=@clearSql+'USE ['+@tbName+'];'+CHAR(10);
        SET @clearSql=@clearSql+'DBCC SHRINKFILE ('''+@tbLog+''',1,TRUNCATEONLY);'+CHAR(10);
        SET @clearSql=@clearSql+'USE [master];'+CHAR(10);
        SET @clearSql=@clearSql+'ALTER DATABASE ['+@tbName+'] SET RECOVERY FULL WITH NO_WAIT;'+CHAR(10);
        SET @clearSql=@clearSql+'ALTER DATABASE ['+@tbName+'] SET RECOVERY FULL;'+CHAR(10);
        
        UPDATE #TMP_WHILE SET TMP_WHILE_FLAG=1 WHERE TMP_WHILE_ID=@TMP_WHILE_ID;
        SELECT @TMP_WHILE_ID=MIN(TMP_WHILE_ID) FROM #TMP_WHILE WHERE TMP_WHILE_FLAG=0 AND TMP_WHILE_ID>@TMP_WHILE_ID;
    END
    
    DROP TABLE #TMP_WHILE;
    --PRINT @clearSql;
    EXEC(@clearSql);
  • 相关阅读:
    Linux:sudo,没有找到有效的 sudoers 资源。
    Python中关于CSV文件中的I/O
    Python数据处理进阶——pandas
    脚本的含义
    Common.Logging.dll----------配置方式,可选引用,用于日志输出
    Net作业调度
    MySQL版本介绍
    在 Windows 上安装Rabbit MQ 指南
    版本控制器
    C# 中的占位符本质
  • 原文地址:https://www.cnblogs.com/love2wllw/p/9607782.html
Copyright © 2011-2022 走看看