zoukankan      html  css  js  c++  java
  • sql server 删除大量数据的一次坑爹之旅

      数据库有1kw数据不在使用了,影响读写速度,于是要删除掉

      使用delete语句

      意外发生,持续了半个小时后,依然不见结束的迹象

      于是强行结束(停止了服务)

      再打开服务后,数据库显示 【正在恢复】

      百度一下我就知道了

      于是,停下服务,剪切了数据到别的文件夹

      恢复服务

      删除数据库

      启动服务

      附加数据库

      1个小时候,附件完成(刚好中午吃饭去了)

      无知的我再次使用delete语句删除

      两个小时候,实在无法忍受,停止删除

      数据库显示 正在恢复

      数据库文件增大,mdf达到31g,log问价达到109g

      再次剪切文件到别的文件夹,启动服务,删除数据库,启动服务,附加数据库

      1h后,sql 附加数据库窗口崩溃

      本人崩溃

      再次停止服务

      剪切数据库文件,启动服务,删除数据库,停止服务,附加mdf,不要log文件,报错无法附加

      百度

      停止服务,剪切数据库文件,恢复服务,创建同名数据库,停止服务,删除同名数据库mdf文件,将原有数据库mdf覆盖同名数据mdf文件

      打开服务,看到数据,为挂起状态

      百度

      执行如下代码

      

    USE master
    GO
    ALTER DATABASE test SET SINGLE_USER
    GO
    ALTER DATABASE test SET EMERGENCY
    GO
    DBCC CHECKDB(test,REPAIR_ALLOW_DATA_LOSS)
    go
    ALTER DATABASE test SET ONLINE
    GO
    ALTER DATABASE test SET MULTI_USER
    GO


    来自:http://blog.csdn.net/zxr85/article/details/51943011

      半个小时后依然在执行状态

      本人崩溃

      停止执行,数据库此时已经 成为 单个用户模式 

      崩溃,百度

      执行如下代码

    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;

    代码来自:http://www.cnblogs.com/amadeuslee/p/6608076.html

      数据库单人模式解除

      刷新数据,奇迹发生了

      数据库表可以访问了,由于只有一个表,实际要保留的数据只有8w多,于是使用

      select   into  语句,将数据保存至临时表,由于磁盘空间不足

      收缩数据库  

      执行select into语句

      执行 truncate table  ,数据库文件大小未变化

      收缩数据库

        执行insert into select  

      一切搞定

      本次一系列操作都不是生产环境,是本地服务器上的数据

      本文中一系列操作仅供参考,文中奇迹发生的那一段,我同样很蒙蔽,仅供参考

  • 相关阅读:
    c++之模板
    javascript 学习 四 函数参数
    javascript 学习三 语句
    jsvascript 学习 二 操作符
    javascript 学习一
    Highcharts areaspline 图表 动态更新数据
    js 数据类型的初步理解
    angular ng-class 三种方法
    angular 与 highcharts 结合使用
    angular 单选按钮之间的默认选中问题
  • 原文地址:https://www.cnblogs.com/netqq/p/7755012.html
Copyright © 2011-2022 走看看