MS Sql server 總結(命令恢複)

來源:互聯網
上載者:User

一,如何建立串連伺服器

exec sp_addlinkedserver  'srv_lnk','','SQLOLEDB','遠程伺服器名或ip地址'
exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'使用者名稱','密碼'
go

二,利用命令和本地的bak檔案恢複遠端資料庫,步驟:

1,建立共用資料夾,將存放bak檔案的檔案夾設為共用資料夾

net share ShareFolder=D:\tmp\db.bak         該命令可以通過C#來調用

如果要不共用,可以這樣寫

net share ShareFolder /delete

2,啟用xp_cmdshell,sql server 2005/2008 預設是禁用此預存程序的。

--啟用

sp_configure 'show advanced options',1
reconfigure
go
sp_configure 'xp_cmdshell',1
reconfigure
go

--如果要禁用可以這樣寫

sp_configure 'xp_cmdshell',0
reconfigure

sp_configure 'show advanced options',0
reconfigure

3,建立共用信用關係,userName,pwd是登入192.224.109.64 這台機器的使用者名稱和密碼。

EXEC xp_cmdshell 'net use \\192.224.109.64\ShareFolder pwd /user:userName';
GO

EXEC xp_cmdshell 'net use \\192.224.109.64\ShareFolder /del';
GO

第二句是如何撤消共用信用關係的。

 4,執行恢複命令

恢複資料庫
restore database [dbName] from disk=N'\\192.224.109.64\ShareFolder\db.bak' WITH  FILE = 1,  move N'dbnew' to N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\db.mdf', move N'dbnew_log' to N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\dblog.ldf',NOUNLOAD,  REPLACE,  STATS = 10 

dbnew,dbnew_log   是備份時的資料庫名和記錄檔名。

其中,如下語句

 select  REVERSE (SUBSTRING(reverse(filename),charindex('\',reverse(filename)),8000)),name   from   sysfiles

可以擷取sql server 資料檔案,記錄檔的存放路徑。

5,執行完畢後做一些相反操作即可,比如禁用xp_cmdshell,撤消共用信用關係,取消檔案夾共用等。
 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.