如何解决如何更改文件组位置?
我使用 filetable 在我的项目中存储文件。现在我想更改文件组位置并将其移动到另一个驱动器。 我该怎么做?
解决方法
有两种方式。
- 首先分离数据库,移动文件,然后重新附加数据库
- 第二在文件组中创建一个新文件,并使用命令 DBCC SHRINKFILE (...) 和 EMPTY 选项,然后删除空文件
第一:
EXEC sp_detach_db 'MyDatabase';
--> move the file with a system command
CREATE DATABASE MyDatabase
ON FILE (FILENAME = '...',FILENAME = '...',...
)
FOR ATTACH;
第二个
ALTER DATABASE MyDatabase
ADD FILE (NAME = '...',SIZE = ... GB,FILEGROWTH = 64 MB)
TO FILEGROUP ...; --> the same filegroupe
DBCC SHRINKFILE ( '...',EMPTYFILE);
ALTER DATABASE MyDatabase
REMOVE FILE '...';
第一个需要将数据库设置为离线,第二个不需要,但会阻止对移动文件中的表和索引的所有访问。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。