我的問題很簡單,我如何通過連接到遠程服務器來編程SQL SMO以進行本地備份。我想將bak文件保存到連接到遠程服務器的本地計算機上。另外,我希望只有特定權限的用戶才能在本地保存備份。SQL Server SMO從遠程服務器本地備份
5
A
回答
6
你不能 - 期。 SQL Server的備份可以將只有保存到本地磁盤 - 本地到SQL Server本身。
你不能用用任何技巧或工具將遠程SQL Server備份到本地硬盤。只是不能這樣做。
4
編輯:重新閱讀你的問題和marc_s答案我的答案只有在遠程服務器你正在談論網絡上的服務器的地方。如果你正在討論另一個域上託管的SQL Server marc_s是對的,我的答案是沒用的。無論如何,如果您正在討論域中的服務器,我會將其留在這裏。 編輯終止
在我的本地C:\ tmp目錄上設置共享後,運行此位的Powershell進行備份。
[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.SMO') | out-null
# may need this instead [System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.SmoExtended') | out-null
$datePart = Get-Date -Format "yyyyMMdd_hhmm"
$targetDir = '\\LocalMachineName\tmp\' # change to fit your specs
$dbname = "DatabaseNameToBackUp"
$s = new-object ('Microsoft.SqlServer.Management.Smo.Server') 'remoteSqlServer'
$bckfile = $targetDir + $dbname + "_" + $datePart + ".bak"
$dbbk = new-object ('Microsoft.SqlServer.Management.Smo.Backup')
$bdi = new-object ('Microsoft.SqlServer.Management.Smo.BackupDeviceItem') ($bckfile, 'File')
$dbbk.Action = 'Database'
$dbbk.BackupSetDescription = "Full backup of " + $dbname
$dbbk.BackupSetName = $dbname + " Backup"
$dbbk.Database = $dbname
$dbbk.MediaDescription = "Disk"
$dbbk.Devices.Add($bdi)
$dbbk.SqlBackup($s)
$dbbk.Devices.Remove($bdi) |out-null
$bckfile = $null
我知道你沒有提到PowerShell的,但因爲我看到了.NET標籤我認爲它可能仍然是一些幫助。不應該花太多精力重寫你的.net風格的選擇。
相關問題
- 1. SQL Server備份到遠程服務器
- 2. Sql服務器SMO部分備份
- 3. 從遠程服務器Vim備份
- 4. 遠程MS Sql服務器備份和恢復從C#
- 5. SMO「恢復服務器失敗」從文件恢復備份
- 6. 從本地回購備份到遠程服務(如Bitbucket)
- 7. 如何備份我的SQL從遠程服務器
- 8. SQL備份版本與此服務器
- 9. SQL Server本地和遠程服務器的同義詞
- 10. SQL服務器備份腳本
- 11. 在VB.NET中將數據庫從遠程服務器備份到本地
- 12. 在Azure備份服務器上備份SQL Server
- 13. 遠程SQL Server Express備份數據庫
- 14. 備份遠程SQL Server數據庫
- 15. SQL Server 2008 - 如何壓縮備份文件並移動到遠程服務器
- 16. 將GIT遠程服務器備份到aws服務器上
- 17. 從本地機器備份遠程MySQL數據庫
- 18. 如何使用SMO備份SQL本地數據庫
- 19. SQL Server不允許遠程服務器
- 20. 沒有啓動服務器服務的SQL Server 2000備份
- 21. 在本地備份遠程數據庫
- 22. 本地文件或遠程服務器
- 23. 從遠程服務器到本地服務器的Sftp文件
- 24. 從遠程服務器複製到本地服務器
- 25. 從鏈接服務器備份MS SQL Server數據庫
- 26. 使用C#&SMO,如何將備份設備添加到SQL Server?
- 27. 如何從SQL Server 2008連接到遠程SQL服務器
- 28. git:從備份恢復服務器/遠程存儲庫
- 29. SMO數據庫備份
- 30. 從服務器到本地機器的增量備份