PDA

View Full Version : حرفه ای: تهیه Backup در SQL Server Express



araz_pashazadeh
سه شنبه 04 آبان 1389, 16:40 عصر
با عرض سلام و خسته نباشید خدمت دوستان.
من چند تا سئوال در مورد کار با SQLEXPRESS و نحوه پشتیبان گیری و بازیابی اطلاعات داشتم
1-من چطوری میتونم به فایلهای MDFو LDF که به پروژه اضافه کردم و با SQLEXPRESS دارم کار میکنم نام کاربری و پسورد بدم؟
2-به چه طریقی می توانم از SQLEXPRESS پشتبان بگیرم و در صورت لزوم اطلاعات را بازیابی کنم؟
نا گفته نماند که من در این ضمینه اطلاعاتی به دست آوردم که در زیر مشاهده می کنید:


Server svr2 = newServer();
Backup bkp = newBackup();
bkp.Devices.AddDevice(@"C:\SMOTest.bak", DeviceType.File);
bkp.Database = "Sarjam";
bkp.Action = BackupActionType.Database;
bkp.Initialize = true;
bkp.PercentCompleteNotification = 10;
bkp.PercentComplete += newPercentCompleteEventHandler(bkp_PercentComplete );
bkp.SqlBackup(svr2);
staticvoid bkp_PercentComplete(object sender, PercentCompleteEventArgs e)
{
Console.WriteLine(e.Percent.ToString() + "% backed up");
}

نمونه کد بالا برای SQL Server درست کار میکنه اما برای SQLEXPRESS با پیغام خطای زیر مواجه میشم و کدی که از اون اسفاده می کنم در عکس مشخص هستش.
از مدیران سایت مخصوصا مدیر این بخش و کسانی که اطلاعاتی در این ضمینه دارن خواهش میکنم که در حل این مشکل من را یاری کنند.

حمیدرضاصادقیان
سه شنبه 04 آبان 1389, 16:45 عصر
سلام.درمورد سوال اولتون شما نمیتونید برای خود فایل mdf,ldf رمزی مشخص کنید.تنها میتونید اونها رو Encrypt کنید یا کاربرانی تعریف کنید که به دیتابیس شما دسترسی داشته باشند.
درمورد سوال دوم کد سی شارپ اون نمیدونم به شکلی میشه ولی شما میتوانید با استفاده از دستور backup database از دیتابیس خود backup تهیه کنید.
موفق باشید

araz_pashazadeh
چهارشنبه 05 آبان 1389, 18:06 عصر
درمورد سوال دوم کد سی شارپ اون نمیدونم به شکلی میشه ولی شما میتوانید با استفاده از دستور backup database از دیتابیس خود backup تهیه کنید.
موفق باشید
ممنون از راهنمایی شما ولی من می خواهم از SQLEXPRESS پشتیبان بگیرم و در این قسمت دستورات backup و restor کار نمی کنه.
اگه اطلاعات من اشتباه هستن یا شما اطلاعات کاملتر در این ضمینه دارین لطفا من را راهنمایی کنین.

حمیدرضاصادقیان
چهارشنبه 05 آبان 1389, 22:07 عصر
سلام.شما با استفاده از یک کوئری میتونید از دیتابیس backup بگیرید.
با استفاده از دستورات backup database , restore database.
این دومورد رو در msdn جستجو کنید همچنین در سایت نیز توضیحاتی در این زمینه ارائه شده است.
موفق باشید

araz_pashazadeh
پنج شنبه 06 آبان 1389, 10:07 صبح
سلام.شما با استفاده از یک کوئری میتونید از دیتابیس backup بگیرید.
با استفاده از دستورات backup database , restore database.
این دومورد رو در msdn جستجو کنید همچنین در سایت نیز توضیحاتی در این زمینه ارائه شده است.
موفق باشید
هرجا که میشد اطلاعاتی در این ضمینه بدست بیارم من نگاه کردم همه گفتن برای پشتیبان گیری باید از کلاس smo استفاده کنی و دستورات backup database , restore database در SQLEXPRESS کار نمی کنه من هم امتحان کردم درست می گن کار نمی کنه حتی در این انجمن هم در این مورد بحث کردن.
اگه شما این دستورات را در SQLEXPRESS استفاده کردین من تعجب می کنم:متفکر:
شما با این حرفتن حتی msdn را هم بردین زیر سئوال...
اگه شما نمونه برنامه ای که این دو دستور در اون به صورت SQLEXPRESS کار می کنه را در اختیار من قرار بدین بی نهایت ممنون می شم.
دیگه نمی دونم کدوم روش درست و از کدوم روش استفاده کنم:عصبانی++:

حمیدرضاصادقیان
پنج شنبه 06 آبان 1389, 10:32 صبح
شما با این حرفتن حتی msdn را هم بردین زیر سئوال...
خواهشا قبل از پست مطلبی صرف صحبت دیگران ، مطلبی رو که اطلاعی ندارید بیان نکنید.
این لینک (http://social.msdn.microsoft.com/forums/en-US/sqlexpress/thread/95750bdf-fcb1-45bf-9247-d7c0e1b9c8d2/)رو مطالعه کنید.
اینم لینک دوم (http://forums.webhostautomation.com/showthread.php?t=20891)
اینم لینک سوم (http://www.codecapers.com/post/How-to-Backup-a-SQL-Express-Database.aspx)