PDA

View Full Version : سوال: پشتیبان گیری از بانک اطلاعاتی SQL Server



rezarko
سه شنبه 10 مرداد 1391, 16:03 عصر
سلام . چه جوری میشه از یک بانک اطلاعاتی SQL یک نسخه پشتیبان تهیه کنم؟
هر چه جست و جو کردم به نتیجه ای نرسیدم اگه میشه یه نمونه بزارید.
ممنون

veniz2008
سه شنبه 10 مرداد 1391, 17:38 عصر
سلام، قبلا در لینک زیر بصورت کامل کدهاشو گذاشتم.(در پست های 5 و 10).
موفق باشی.
http://barnamenevis.org/showthread.php?348780-%DA%86%DA%AF%D9%88%D9%86%DA%AF%DB%8C-%D8%AA%D9%87%DB%8C%D9%87-%DA%A9%D9%BE%DB%8C-%D8%A7%D8%B2-%D9%81%D8%A7%DB%8C%D9%84-%D9%87%D8%A7%DB%8C-%D8%AF%DB%8C%D8%AA%D8%A7%D8%A8%DB%8C%D8%B3-%D8%A8%D9%87-%D9%85%D9%86%D8%B8%D9%88%D8%B1-%D8%AA%D9%87%DB%8C%D9%87-%D9%BE%D8%B4%D8%AA%DB%8C%D8%A8%D8%A7%D9%86&p=1538593#post1538593

rezarko
سه شنبه 10 مرداد 1391, 19:40 عصر
ممنون ولی اگه بخوام از این فایل تو برناممم استفاده کنم چی؟

ali_habibi1384
سه شنبه 10 مرداد 1391, 21:00 عصر
ين كد پراسيجر BackUp :(كه بصورت خودكار مسير بك آپ رو از جدول tblSetting بر ميداره و يك نام فايل از كاربر ميگيره كه به اون نام در مسيري كه گفتم كپي ميكنش):


ALTER Procedure [dbo].[AutoBackUp]
@FileName nvarchar(50)
As
declare @Path nvarchar(255)
set @Path =( select top 1 PathBackUp from tblSetting )
declare @PathFileName nvarchar(300)
set @PathFileName = @Path +'\'+@FileName
set @PathFileName = REPLACE(@PathFileName ,'\\','\')
Begin
BACKUP DATABASE [MashinAlat] TO DISK = @PathFileName with noinit
End

اينهم كد پراسيجر Restore(مسير كپي كردن بك آپ رو از كاربر ميگيره و از اونجا بازيابيش ميكنه):


ALTER Procedure [dbo].[ReStoreBackUp]
@PathFile nvarchar(300)
As
set @PathFile= REPLACE(@PathFile ,'\\','\')
Begin
ALTER DATABASE [MashinAlat] SET OFFLINE WITH ROLLBACK IMMEDIATE
Restore Database [MashinAlat] From Disk =@PathFile
End

تنها كاري كه مونده يه فراخوني براي اين پراسيجرهاست.

veniz2008
چهارشنبه 11 مرداد 1391, 00:28 صبح
ممنون ولی اگه بخوام از این فایل تو برناممم استفاده کنم چی؟
لینکی رو که گذاشتم نگاه کردید؟، توی پست 5 بصورت کامل توضیح دادم. یعنی شما اول یه پروسیجر مینویسی و بعد داخل محیط ویژوال استودیو هم اون پروسیجر رو صدا میزنی و بک آپ رو میگیری. همون کارهایی که اونجا گفتم انجام بدید قطعا مشکلتون حل میشه.
موفق باشید.

rezarko
شنبه 14 مرداد 1391, 21:50 عصر
ين كد پراسيجر BackUp :(كه بصورت خودكار مسير بك آپ رو از جدول tblSetting بر ميداره و يك نام فايل از كاربر ميگيره كه به اون نام در مسيري كه گفتم كپي ميكنش):


ALTER Procedure [dbo].[AutoBackUp]
@FileName nvarchar(50)
As
declare @Path nvarchar(255)
set @Path =( select top 1 PathBackUp from tblSetting )
declare @PathFileName nvarchar(300)
set @PathFileName = @Path +'\'+@FileName
set @PathFileName = REPLACE(@PathFileName ,'\\','\')
Begin
BACKUP DATABASE [MashinAlat] TO DISK = @PathFileName with noinit
End

اينهم كد پراسيجر Restore(مسير كپي كردن بك آپ رو از كاربر ميگيره و از اونجا بازيابيش ميكنه):


ALTER Procedure [dbo].[ReStoreBackUp]
@PathFile nvarchar(300)
As
set @PathFile= REPLACE(@PathFile ,'\\','\')
Begin
ALTER DATABASE [MashinAlat] SET OFFLINE WITH ROLLBACK IMMEDIATE
Restore Database [MashinAlat] From Disk =@PathFile
End

تنها كاري كه مونده يه فراخوني براي اين پراسيجرهاست.

ممنون ولی ارور میده . میشه یه نمونه بذارید؟
ارور:Only one expression can be specified in the select list when the subquery is not introduced with EXISTS.