久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

使用 MOVE 確定 DB RESTORE 的 SQL 數(shù)據(jù)路徑

Determining SQL data path for DB RESTORE with MOVE(使用 MOVE 確定 DB RESTORE 的 SQL 數(shù)據(jù)路徑)
本文介紹了使用 MOVE 確定 DB RESTORE 的 SQL 數(shù)據(jù)路徑的處理方法,對(duì)大家解決問題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!

問題描述

我正在嘗試編寫一個(gè)自動(dòng)恢復(fù)數(shù)據(jù)庫備份的腳本.我知道我可以使用以下 RESTORE 命令:

I'm trying to write a script which automatically restores a database backup. I know I can use the following RESTORE command:

RESTORE DATABASE [DBRestoredName] 
FROM  DISK = N'C:\path\to\backup.bak' 
WITH  FILE = 1,  
MOVE N'DBNAME' TO N'C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008\MSSQL\DATA\DBNAME.mdf',  
MOVE N'DBNAME_log' TO N'C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008\MSSQL\DATA\DBNAME.ldf',  
NOUNLOAD

這樣做的問題是我希望能夠在運(yùn)行時(shí)確定 SQL 服務(wù)器的數(shù)據(jù)位置(即 TO 路徑),以便恢復(fù)的數(shù)據(jù)庫與該服務(wù)器上的其他數(shù)據(jù)庫保持一致.

The problem with this is I want to be able to determine the SQL server's data location (i.e. the TO path) at run-time so the restored database is placed consistently alongside other databases on this server.

要恢復(fù)的數(shù)據(jù)庫在要恢復(fù)到的服務(wù)器上不存在,我需要 MOVE 語句,因?yàn)樵捶?wù)器可能是 SQL Server 2005,目標(biāo)是 2008,因此備份文件中包含的文件路徑是不可取.

The database being restored won't exist on the server it's being restored to and I require the MOVE statements as the source server is likely to be SQL server 2005 and the target is 2008 therefore the file paths included in the backup file are not desirable.

那么我可以通過哪些方式以編程方式確定 SQL 數(shù)據(jù)位置?

So what ways could I determine the SQL data location programmatically?

推薦答案

我發(fā)現(xiàn)的唯一可行的解??決方案是從您的 T-SQL 代碼中檢查注冊(cè)表:

The only viable solution I found is inspecting the registry from your T-SQL code:

DECLARE @filepath NVARCHAR(260)

EXEC master.dbo.xp_instance_regread 
        N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', 
        N'DefaultData', 
        @filepath output, 'no_output' 

SELECT @filepath as 'Your default data directory'

我可以發(fā)誓數(shù)據(jù)路徑將存儲(chǔ)在 SERVERPROPERTY 或動(dòng)態(tài)管理視圖 (DMV) 中的某處 - 但沒有運(yùn)氣......

I could have sworn that data path would be stored somewhere in a SERVERPROPERTY or a Dynamic Management View (DMV) - but no luck ......

更新:正如@Mike 指出的 - 在 SQL Server 2012 和更新版本中,該信息可作為 SERVERPROPERTY 使用:

Update: as @Mike pointed out - in SQL Server 2012 and newer, that information is available as a SERVERPROPERTY:

SELECT 
    DefaultDataPath = SERVERPROPERTY('InstanceDefaultDataPath'),
    DefaultLogPath = SERVERPROPERTY('InstanceDefaultLogPath')

這篇關(guān)于使用 MOVE 確定 DB RESTORE 的 SQL 數(shù)據(jù)路徑的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

Converting Every Child Tags in to a Single Column with multiple Delimiters -SQL Server (3)(將每個(gè)子標(biāo)記轉(zhuǎn)換為具有多個(gè)分隔符的單列-SQL Server (3))
How can I create a view from more than one table?(如何從多個(gè)表創(chuàng)建視圖?)
Create calculated value based on calculated value inside previous row(根據(jù)前一行內(nèi)的計(jì)算值創(chuàng)建計(jì)算值)
How do I stack the first two columns of a table into a single column, but also pair third column with the first column only?(如何將表格的前兩列堆疊成一列,但也僅將第三列與第一列配對(duì)?) - IT屋-程序員軟件開發(fā)技
Recursive t-sql query(遞歸 t-sql 查詢)
Convert Month Name to Date / Month Number (Combinations of Questions amp; Answers)(將月份名稱轉(zhuǎn)換為日期/月份編號(hào)(問題和答案的組合))
主站蜘蛛池模板: 国产视频一区二区三区四区五区 | 三级av在线 | 成人免费视频 | 操一草| 亚洲一区二区三区四区五区午夜 | 羞羞色影院 | 久久久久久综合 | 亚洲精品区 | 97人人澡人人爽91综合色 | 亚洲国产精品99久久久久久久久 | 婷婷成人在线 | 亚洲欧美日韩国产综合 | 成人二区 | 中文字幕国 | 中文字幕三区 | 男女国产网站 | 国户精品久久久久久久久久久不卡 | 亚洲 欧美 综合 | 中文字幕一区二区三区日韩精品 | 亚洲自拍偷拍视频 | 久久精品欧美电影 | 华丽的挑战在线观看 | 成在线人视频免费视频 | 日韩av在线一区二区三区 | 99国内精品久久久久久久 | 国产精品久久久久久亚洲调教 | 中文字字幕在线中文乱码范文 | 亚洲成人精品免费 | 国产日韩欧美在线观看 | 色婷婷久久久亚洲一区二区三区 | 天天夜天天操 | 亚洲视频一区在线观看 | 亚洲自拍偷拍视频 | 成人小视频在线免费观看 | 亚洲第一av | 国产一区二区三区四区三区四 | 欧美精品一区在线发布 | 最新日韩av | 国产成人99久久亚洲综合精品 | 69性欧美高清影院 | 在线观看国产wwwa级羞羞视频 |