详解SQL Server如何修改数据库物理文件的存在位置
2017-06-17 1759
前言
大家应该都知道SQL Server创建新库时,默认会把数据存放在C盘中,一旦数据库中的存储数据多了以后,C盘的空间就会所剩无几。解决方案是将存放数据的物理文件迁移到其他盘。
具体流程为:
1、将现有的数据库脱机
1 | ALTER DATABASE DB1 SET OFFLINE WITH ROLLBACK IMMEDIATE; |
2、将数据库文件移到新的位置
文件复制完成以后需要:右键-属性-安全-在组或用户名处添加Authenticated Users-更改该组权限为完全权限,否则接下来的操作会报
中间可能存在的问题:
1 2 3 4 5 6 7 8 | 消息 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、修改数据库关联文件的指向
1 2 | 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、将数据库进行联机
1 | ALTER DATABASE DB1 SET ONLINE; |
下一篇:SQL查询方法精华集