SQL Server的ldf和mdf文件转移,释放C盘空间

最近公司的电脑越来越卡,因为忙一直也没太顾上。昨天晚上上完线,今天闲了,仔细查了一下,发现C盘居然剩下4G不到了……简直震惊。翻来翻去,发现SQL Server居然就占了30多G……

再仔细检查一下,发现是MSSQL\DATA文件夹下,有太多的mdf和ldf文件了,而且有几个是好几G大小的。其实就是这两个文件。


平时各种还原库,也不太注意这个,没想到后果这么严重,于是在网上搜索研究了一下怎么把这些文件转移。总结一下:

比如我这个库test_db

/*设置脱机*/
alter database [test_db] set offline
/*逻辑移动*/
use master;
go
alter database test_db
modify file
(
 name = test_db,
 filename = N'F:\MSSQLdata\test_db.mdf'
);
go
alter database test_db
modify file
(
 name = test_db_log,
 filename = N'F:\MSSQLdata\test_db_log.ldf'
);
go

首先让数据库脱机,这样才可以动这两个文件。
先进行逻辑移动,说白了就是改刚才属性页面里后面的那两个路径,会发现这两个路径是没办法在属性里直接手改的……所以得用这语句来改。
name=后面接的是两者的逻辑名称,也就是刚才属性页面里的。一般是数据库名和数据库名_log,不过如果是还原的库,可能名字会千奇百怪,注意执行语句前将逻辑名称改一下。逻辑名称倒是可以直接在属性页面里修改。
filename =后面接的就是打算移动到的路径了。
上面的语句执行完毕后,去MSSQL\DATA文件夹下把对应的两个文件找到,剪切到之前修改的路径下。注意文件名也要能对应上才可以。
最后一步再取消脱机,执行:

alter database [testdb] set online;

如果之前的名称修改正确、路径正确、文件名正确、文件正确,那么就可以顺利取消脱机,然后继续使用这个库了。



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值