PDA

View Full Version : کسی از دوستان میتونه در مورد back up و restore با استفاده از SMO توضیح بده.



mohsen_csharp
سه شنبه 27 اسفند 1387, 10:07 صبح
با عرض سلام.
از codeProject این مثال رو گرفتم.تو backup گیری خوب کار میکنه ولی تو restore مشکل داره.البته تو MSDN هم یه چیزایی پیدا کردم ولی مثل اینکه برای restore کردن باید پایگاه داده اصلی رو پاک کرد.
اصلا یه فایل backup رو چه طوری میشه تو SQLEXPRESS باز کرد؟

masoud.ramezani
سه شنبه 27 اسفند 1387, 10:39 صبح
سلام

شما میتوانید Microsoft SQL Server Management Studio Express را از لینک زیر دریافت کنید. حجم آن حدود 39 مگابایت است.

http://www.microsoft.com/downloads/details.aspx?FamilyId=C243A5AE-4BD1-4E3D-94B8-5A0F62BF7796&displaylang=en


در ضمن من هم از smo برای پشتیبانگیری استفاده کرده ام و مشکلی نداشتم. برای restore کردن فکر میکنم باید تمام connection ها قطع شود تا بتوانیم این کار را انجام دهیم.

ahmad.salimi
یک شنبه 23 فروردین 1388, 07:54 صبح
سلام دوست عزيز
من براي Restor كردن از كد زير استفاده كردم و جواب هم داده بهتره اينو در قالب PROCEDURE استفاده كنيد.البته در قالب دوتا PROCEDURE كه به ترتيب زير در مثلا vb يا vb.net و ... غيره اونو استفاده كنيد:


CREATE PROCEDURE RestoreDatabase;1
AS

RESTORE FILELISTONLY
FROM DISK = 'D:\LastExe\EmptyHesabAnbar.bak'


GO


CREATE PROCEDURE RestoreDatabase;2
AS

Alter DATABASE [Hesab&Anbar_1388]
SET SINGLE_USER WITH
ROLLBACK IMMEDIATE

RESTORE DATABASE [Hesab&Anbar_1388]
FROM DISK = 'D:\LastExe\EmptyHesabAnbar.bak'
WITH MOVE 'Hesab&Anbar' TO 'D:\DataFiles\HesabAnbar_1388\Hesab&Anbar_1388.mdf',
MOVE 'Update_Log' TO 'D:\DataFiles\HesabAnbar_1388\Hesab&Anbar_1388_Log.ldf'
ALTER DATABASE [Hesab&Anbar_1388] SET MULTI_USER


GO

mohsen_csharp
یک شنبه 23 فروردین 1388, 09:53 صبح
با تشکر آقای ahmad.salimi (http://barnamenevis.org/forum/member.php?u=67625) .
بنده می خواستم با smo کار کنم البته خودم یه مثال کامل با smo در این تایپیک قرار دادم
http://barnamenevis.org/forum/showthread.php?t=153480