热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

不同方法来移动数据库(更改磁盘时用)

不同方法来移动数据库(更改磁盘时用)情景:公司有一个数据库,把数据库文件和事务日志文件全都存储在D盘,可是由于业务扩展,需要使用到更多D盘的磁盘空间,CIO让你把数据库文件从D盘移动到F盘。此时,你该怎么办呢?由于白天很多用户会访问到你的数据库

不同方法来移动数据库(更改磁盘时用) 情景:公司有一个数据库,把数据库文件和事务日志文件全都存储在D盘,可是由于业务扩展,需要使用到更多D盘的磁盘空间,CIO让你把数据库文件从D盘移动到F盘。 此时,你该怎么办呢?由于白天很多用户会访问到你的数据库

不同方法来移动数据库(更改磁盘时用)

情景:公司有一个数据库,把数据库文件和事务日志文件全都存储在D盘,可是由于业务扩展,需要使用到更多D盘的磁盘空间,CIO让你把数据库文件从D盘移动到F盘。

此时,你该怎么办呢?由于白天很多用户会访问到你的数据库,香港服务器,要移动需要挑选夜间无人时进行!

转移之前请先做个完整备份,以便发生任何意想不到的事情可以拯救回来!

下面让我们开始来移动咯!

方法一:使用T-SQL语句实现移动数据库

--首先让你的数据库状态变成脱机状态

ALTER DATABASE Test SET OFFLINE WITH ROLLBACK IMMEDIATE;

--执行这个命令之后,SQL Server立即断开所有的连接并回退它们的事务(此时如果有执行未完的事务就容易让数据库丢失)

--所有正在执行事务的用户都会接收到一个连接错误,而且他们不能再连接数据库。

--查看Test数据库是否存在,对对看数据库名字是否正确
SELECT name ,
physical_name AS CurrentLocation ,
state_desc
FROM sys.master_files

--移动数据文件和事务日志文件到新位置。运行以下T-SQL语句:(此处数据库名字为Test)
ALTER DATABASE Test MODIFY FILE(NAME=Test,FILENAME='F:\Test.mdf');
ALTER DATABASE Test MODIFY FILE(NAME=Test_Log,FILENAME='F:\Test_Log.ldf');
ALTER DATABASE Test SET ONLINE

方法二:使用SSMS界面操作:

详细步骤:

(1)首先把数据库分离:(此时保证没人使用数据库)


(2)将此数据库的两个文件:DBTest.MDF、DBTest_Log.LDF移动到新的硬盘上;
(3)附加数据库:

这样就行了。

《本文为王瓒原创博文,需要转载,香港虚拟主机,请联系本人!》

posted on

,虚拟主机
推荐阅读
author-avatar
横店东磁何静
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有