iT邦幫忙

0

MSSQL 2008資料庫檔案更改路徑

  • 分享至 

  • xImage

各位好,

OS: Windows server 2008 SP1
DB: MSSQL 2008

Disk切割為兩部分, C:\為OS及MSSQL的master等基本資料庫,
D:\才放應用系統所用的資料庫A的.mdf.

現因D:\快滿了, 新增了E:\的硬碟, 請問該怎麼坐, 才能將整個資料庫A的.mdf改到E:\, (D:\就不再使用了)

感謝囉!!
p.s.如果將.mdf複製到E:\, 再把磁碟代號E:\改為D:\, 這樣會有問題嗎?

plums iT邦高手 1 級 ‧ 2011-05-17 11:52:45 檢舉
pcmike27提到:
如果將.mdf複製到E:\, 再把磁碟代號E:\改為D:\, 這樣會有問題嗎?

我個人是會用這一招的,但是前題是得在安全模式下進行複製(保證資料完整)、變更磁碟代號、重開機,這樣就好了
pcmike27 iT邦新手 4 級 ‧ 2011-05-17 14:53:38 檢舉
真的可以?!
我還被別人告知這樣會發生不可預知的問題說, 原來是嚇唬我的?
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
7
Ryan
iT邦新手 1 級 ‧ 2011-05-17 10:27:05

我是覺得可以保險一點,
1.原始資料庫先做備份
2.卸離原始資料庫
3.重建新資料庫(目的地在新的磁區)
4.執行資料庫還原

pcmike27 iT邦新手 4 級 ‧ 2011-05-17 14:51:43 檢舉

不好意思, 可不可以提供指令參考?? 謝謝!!

7
liurambo0911
iT邦高手 1 級 ‧ 2011-05-17 10:29:30

先DETACH
MDF複製到E槽
在重新ATTACH
何須變更磁碟編號

程式上的SQL指令並不會去管你到底放在哪個硬碟啊
而是SQL本身到底ATTACH哪邊的MDF 以及正確的資料庫名稱

pcmike27 iT邦新手 4 級 ‧ 2011-05-17 14:50:49 檢舉

不好意思, 可不可以提供指令參考?? 謝謝!!

去查詢SQLCMD的ATTACH DETACH就有完整說明了
大概如下,但絕對不完整:
DETACH "你的資料庫別名"
ATTACH "資料庫別名","完整路徑\???.MDF","完整路徑\???.LDF"

注意要有權限

5
hawk
iT邦新手 4 級 ‧ 2011-05-17 10:37:27

1.先將要移動的資料庫"卸離"
2.複製.mdf 的檔案到你要的磁碟中
3.執行"掛載" 選擇你要掛載的檔案(mdf檔)
4.就完成了

注意:
1.有開啟SQL SEVER agent時要先停掉
2.tempdb 不適合上述方法方法如下讓SQL SERVER重新建立即可

SELECT name, physical_name
FROM sys.master_files
WHERE database_id = DB_ID(‘tempdb’)
USE master;
GO
ALTER DATABASE tempdb MODIFY FILE (NAME = tempdev, FILENAME = ‘D:\Sql DB\tempdb.mdf’);
GO
ALTER DATABASE tempdb MODIFY FILE (NAME = templog, FILENAME = ‘D:\Sql DB\templog.ldf’);
GO
And Restart MSSQL
希望對您有幫助囉

pcmike27 iT邦新手 4 級 ‧ 2011-05-17 14:51:18 檢舉

不好意思, 可不可以提供指令參考?? 謝謝!!

2
billyao
iT邦新手 1 級 ‧ 2011-05-18 10:42:48

基本上而言,前述三位的解說,都已經具體答覆您了
第一位是文字描述
第二位是演算法
第三位是指令

他們都解釋的很清楚,只是您可能要稍微做點功課,
找一本SQL資料庫管理基礎的書,先翻一翻應該會好些...

0
insider
iT邦研究生 5 級 ‧ 2011-05-18 13:53:59

Yes, the answer already in place by various volunteers published above.
Please refer to "http://msdn.microsoft.com/en-us/library/ms345408.aspx", if still can not catch up with it. Please sign-on some of MCDBA course to boost up DB engine skill.

0
jojojjjo
iT邦新手 4 級 ‧ 2015-04-10 15:07:27

資料庫若做備份, 最妥當都是用獨立的網絡儲存裝置, 就像ahsay那樣的
http://www.ahsay.com/jsp/tc/home/

我要發表回答

立即登入回答