时间:2021-07-01 10:21:17 帮助过:51人阅读
再仔细检查一下,发现是MSSQLDATA文件夹下,有太多的mdf和ldf文件了,而且有几个是好几G大小的。其实就是这两个文件。 平时各种还原库,也不太注意这个,没想到后果这么严重,于是在网上搜索研究了一下怎么把这些文件转移。总结一下: 比如我这个库test_db /
再仔细检查一下,发现是MSSQLDATA文件夹下,有太多的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:MSSQLdatatest_db.mdf'
);
go
alter database test_db
modify file
(
name = test_db_log,
filename = N'F:MSSQLdatatest_db_log.ldf'
);
go
首先让数据库脱机,这样才可以动这两个文件。
先进行逻辑移动,说白了就是改刚才属性页面里后面的那两个路径,会发现这两个路径是没办法在属性里直接手改的……所以得用这语句来改。
name=后面接的是两者的逻辑名称,也就是刚才属性页面里的。一般是数据库名和数据库名_log,不过如果是还原的库,可能名字会千奇百怪,注意执行语句前将逻辑名称改一下。逻辑名称倒是可以直接在属性页面里修改。
filename =后面接的就是打算移动到的路径了。
上面的语句执行完毕后,去MSSQLDATA文件夹下把对应的两个文件找到,,剪切到之前修改的路径下。注意文件名也要能对应上才可以。
最后一步再取消脱机,执行:
alter database [testdb] set online;
如果之前的名称修改正确、路径正确、文件名正确、文件正确,那么就可以顺利取消脱机,然后继续使用这个库了。