详解SQL Server如何修改数据库物理文件的存在位置

前言

大家应该都知道sql Server创建新库时,认会把数据存放在C盘中,一旦数据库中的存储数据多了以后,C盘的空间就会所剩无几。解决方案是将存放数据的物理文件迁移到其他盘。

具体流程为:

1、将现有的数据库脱机

rush:sql;"> ALTER DATABASE DB1 SET OFFLINE WITH ROLLBACK IMMEDIATE;

2、将数据库文件移到新的位置

文件复制完成以后需要:右键-属性-安全-在组或用户名添加Authenticated Users-更改该组权限为完全权限,否则接下来的操作会报

中间可能存在的问题:

rush:plain;"> 消息 5120,级别 16,状态 101,第 17 行 无法打开物理文件“D:\MSsql\DATA\testdb.mdf”。操作系统错误 5:“5(拒绝访问。)”。 消息 5120,级别 16,状态 101,第 17 行 无法打开物理文件“D:\MSsql\DATA\testdb _log.ldf”。操作系统错误 5:“5(拒绝访问。)”。 消息 5181,级别 16,状态 5,第 17 行 无法重新启动数据库“ctrip”。将恢复到以前的状态。 消息 5069,级别 16,状态 1,第 17 行 ALTER DATABASE 语句失败。

3、修改数据库关联文件的指向

rush:sql;"> ALTER DATABASE DB1 MODIFY FILE(NAME = DB1,FILENAME = X:\sqlServer\DB1.mdf); ALTER DATABASE DB1 MODIFY FILE(NAME = DB1_Log,FILENAME = X:\sqlServer\DB1_Log.ldf);

4、将数据库进行联机

rush:sql;"> ALTER DATABASE DB1 SET ONLINE;

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对编程之家的支持

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...