• SQL Server开启READ_COMMITTED_SNAPSHOT


    按照网上搜索的下面

    -------------------------------------------------------------------------------

    设置数据库为SINGLE_USER模式,减少锁定时间

    ALTER DATABASE dbname SET SINGLE_USER WITH ROLLBACK IMMEDIATE
    ALTER DATABASE dbname SET ALLOW_SNAPSHOT_ISOLATION ON
    ALTER DATABASE dbname SET READ_COMMITTED_SNAPSHOT ON
    ALTER DATABASE dbname SET MULTI_USER
    开启之后一天了没有看到死锁的记录,还是有点作用的!
    -------------------------------------------------------------------------------
     
    没有仔细看这句
    ALTER DATABASE dbname SET SINGLE_USER WITH ROLLBACK IMMEDIATE
     
    直接把生产环境数据库干死了。毫无反应。
    被修改的数据库显示单用户
     
    无奈马上重启
    执行
    USE master; 
    GO 
    DECLARE @SQL VARCHAR(MAX); 
    SET @SQL='' 
    SELECT @SQL=@SQL+'; KILL '+RTRIM(SPID) 
    FROM master..sysprocesses 
    WHERE dbid=DB_ID('数据库名称');
    
    EXEC(@SQL);
    ALTER DATABASE 数据库名称 SET MULTI_USER;

    一切恢复。
    凡事还是理解再执行。
  • 相关阅读:
    Oracle 基础系列之1.3 用户管理
    Oracle 系统常用命令
    Gogs安装
    centos7 Minimal安装没有ifconfig
    centos 上安装nodejs v8.0.0
    Linux 学习笔记
    使用 weinre 远程调试移动端页面
    Linux tree命令
    innodb分区
    Innodb表空间
  • 原文地址:https://www.cnblogs.com/Mblog/p/15158529.html
Copyright © 2020-2023  润新知