نمایش نتایج 1 تا 25 از 25

نام تاپیک: چگونگی گرفتن Backup و Restore کردن از اطلاعات SQL Server

  1. #1
    کاربر تازه وارد آواتار samandari
    تاریخ عضویت
    فروردین 1382
    محل زندگی
    ایران
    پست
    65

    چگونگی گرفتن Backup و Restore کردن از اطلاعات SQL Server

    با سلام خدمت دوستان
    من میخواهم از داخل برنامه از اطلاعات ذخیره شده در داخل SQL Server پشتیبان گیری کنم یعنی کاربری که Sql Server بلد نیست بتواند به راحتی از داخل برنامه پشتیبانگیری کرده و یا اطلاعات پشتیبانگیری شده را برگرداند.

  2. #2
    درود

    میتونی این Command رو با استفاده از StoredProcedure یا Query اجرا کنی:

    backup database pubs to disk = 'c:\pubs.bak'


    البته این یه مثال خیلی ساده ست، حتما میدونی که Backup چقدر پارامتر داره!!؟؟

  3. #3
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1384
    پست
    67
    می تونی از این استفاده کنی :


    try
    if SaveDialog1.Execute then
    ADOConnection1.Execute('backup database Pubs to disk='''+SaveDialog1.FileName+'''');
    except
    MessageDlg('عملیات پشتیبان گیری با شکست مواجه شد',mtError,[mbOK],0);
    end;<span dir=ltr></span>

  4. #4
    کاربر دائمی
    تاریخ عضویت
    دی 1383
    محل زندگی
    تهران
    پست
    558
    سلام
    کدهای نوشته شده توسط دوستان تنها در حالتیکه بر روی سرور دستور اجرا شود صحیح است
    ولی اگر میخواهی از روی کلاینتها هم اجازه Backup و Restore بدی بهتره کد زیر رو استفاده کنی
    همه Backup ها بر روی سرور و در پوشه ای به نام Backup در محل فیزیکی خود بانک اطلاعاتی ایجاد میشود

    مثلا برای Northwind

    تعیین محل فیزیکی بانک روی سرور راه دور
    رشته پرس و جوی استفاده شده
    SELECT filename FROM sysdatabases WHERE name = 'Northwind'

    مسیر فیزیکی بر روی سرور برای بانک انتخاب شده
    E&#58;\Program Files\Microsoft SQL Server\MSSQL\data

    ایجاد پوشه فیزیکی جدید برای پشتیبانها روی سرور با دستور
    EXEC master..xp_cmdshell &#91;md "E&#58;\Program Files\Microsoft SQL Server\MSSQL\data\Backup"&#93;

    تهیه پشتیبان از بانک اطلاعاتی با استفاده از دستور
    BACKUP DATABASE &#91;Northwind&#93; TO DISK = 'E&#58;\Program Files\Microsoft SQL Server\MSSQL\data\Backup\BackupNorthwind_Bak.bak' WITH INIT, NAME = N'Northwind_Bak', STATS = 10

    برای بازیابی بانک اطلاعاتی
    رفتن به مود تک کاربره با استفاده از پرس و جوی زیر
    EXEC sp_dboption 'Northwind', 'single user', 'true'

    تعیین محل فیزیکی بانک روی سرور راه دور
    رشته پرس و جوی استفاده شده
    SELECT filename FROM sysdatabases WHERE name = 'Northwind'

    مسیر فیزیکی بر روی سرور برای بانک انتخاب شده
    E&#58;\Program Files\Microsoft SQL Server\MSSQL\data

    بازیابی اطلاعات با استفاده از پرس و جوی زیر
    RESTORE DATABASE &#91;Northwind&#93; FROM DISK = 'E&#58;\Program Files\Microsoft SQL Server\MSSQL\data\Backup\BackupNorthwind_Bak.bak' WITH REPLACE , NOUNLOAD , STATS = 10, RECOVERY

    خروج از مود تک کاربره با استفاده از پرس و جوی زیر
    EXEC sp_dboption 'Northwind', 'single user', 'false'

  5. #5
    کاربر دائمی
    تاریخ عضویت
    آذر 1384
    محل زندگی
    تهران
    پست
    310
    آقای مجید افرا 222 تشکر از لطف شما ولی بنده با یک مشکل موجه شده ام و وقتی می خواهم برنامه را Restore کنم پیغام زیر ظاهر می گردد
    بانک مورد نظر توسط کاربر دیگری مورد استفاده قرار گرفته است
    لطفا کمک کنید
    با تشکر

  6. #6
    کاربر دائمی آواتار soroush_vs
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    شیراز
    سن
    38
    پست
    457
    خب شاید Enterprise Manager هم اکنون اجرا است

  7. #7
    اگر چه قبلا در این مورد زیاد بحث شده ولی
    علاوه بر اونی که سروش(محمود) گفت ممکنه برنامه خودتون داره ازش استفاده میکنه که در این صورت قبل از ارسال این دستورات کافیه دستور زیر رو ارسال کنی.

    use master

    اگر باز هم با مشکلی مواجه شدی در بخش SQL Server یه جستجو بکن در این مورد بحثهای کاملی شده است
    You never know what you can do until you try

  8. #8
    بچه ها من یک component خوب دارم که یکی دو بار که این سوال مطرح شد گداشتم روی سایت چند وقتی از اون استفاده می کنم از کل بانک اطلاعاتی به راحتی در حال استفاده کپی می گیرم
    اگه خاستید دوباره روی سایت می گذارم

    می تونی از دستور Backup database و restore database هم استفاده کنی به راحتی جواب می ده

  9. #9
    نقل قول نوشته شده توسط majid_afra222 مشاهده تاپیک
    سلام
    کدهای نوشته شده توسط دوستان تنها در حالتیکه بر روی سرور دستور اجرا شود صحیح است
    ولی اگر میخواهی از روی کلاینتها هم اجازه Backup و Restore بدی بهتره کد زیر رو استفاده کنی
    همه Backup ها بر روی سرور و در پوشه ای به نام Backup در محل فیزیکی خود بانک اطلاعاتی ایجاد میشود

    مثلا برای Northwind

    تعیین محل فیزیکی بانک روی سرور راه دور
    رشته پرس و جوی استفاده شده
    SELECT filename FROM sysdatabases WHERE name = 'Northwind'

    مسیر فیزیکی بر روی سرور برای بانک انتخاب شده
    E&#58;\Program Files\Microsoft SQL Server\MSSQL\data

    ایجاد پوشه فیزیکی جدید برای پشتیبانها روی سرور با دستور
    EXEC master..xp_cmdshell &#91;md "E&#58;\Program Files\Microsoft SQL Server\MSSQL\data\Backup"&#93;

    تهیه پشتیبان از بانک اطلاعاتی با استفاده از دستور
    BACKUP DATABASE &#91;Northwind&#93; TO DISK = 'E&#58;\Program Files\Microsoft SQL Server\MSSQL\data\Backup\BackupNorthwind_Bak.bak' WITH INIT, NAME = N'Northwind_Bak', STATS = 10

    برای بازیابی بانک اطلاعاتی
    رفتن به مود تک کاربره با استفاده از پرس و جوی زیر
    EXEC sp_dboption 'Northwind', 'single user', 'true'

    تعیین محل فیزیکی بانک روی سرور راه دور
    رشته پرس و جوی استفاده شده
    SELECT filename FROM sysdatabases WHERE name = 'Northwind'

    مسیر فیزیکی بر روی سرور برای بانک انتخاب شده
    E&#58;\Program Files\Microsoft SQL Server\MSSQL\data

    بازیابی اطلاعات با استفاده از پرس و جوی زیر
    RESTORE DATABASE &#91;Northwind&#93; FROM DISK = 'E&#58;\Program Files\Microsoft SQL Server\MSSQL\data\Backup\BackupNorthwind_Bak.bak' WITH REPLACE , NOUNLOAD , STATS = 10, RECOVERY

    خروج از مود تک کاربره با استفاده از پرس و جوی زیر
    EXEC sp_dboption 'Northwind', 'single user', 'false'
    سلام
    می شه بیشتر توضیح بدین ؟چطور باید از این کد ها استفاده کنیم؟
    با تشکر

  10. #10
    حرفهای جون کامپوننت رو بذار لطفا

  11. #11
    من از این دستور استفاده می کنم امتحان کنید

    try
    Dm.ADOConnection1.Execute('backup database نام دیتابیس to disk = '''+pathback+''' ');
    MessageDlg('عملیات پشتیبان گیری با موفقیت انجام شد',mtInformation,[mbOK],0);
    except

    MessageDlg('عملیات پشتیبان گیری با شکست مواجه شد',mtError,[mbOK],0);

  12. #12

    دوست عزیز اگر این کامپننت را بگذاری لطف میکنی

    نقل قول نوشته شده توسط حرفه ای مشاهده تاپیک
    بچه ها من یک component خوب دارم که یکی دو بار که این سوال مطرح شد گداشتم روی سایت چند وقتی از اون استفاده می کنم از کل بانک اطلاعاتی به راحتی در حال استفاده کپی می گیرم
    اگه خاستید دوباره روی سایت می گذارم

    می تونی از دستور Backup database و restore database هم استفاده کنی به راحتی جواب می ده
    دوست عزیز اگر این کامپننت را بگذاری لطف میکنی و اگر برای مناین کامپوننت را با کد بکاپ و ریستور را به من ایمل کنی از شما یک جهان ممنون میشوم چونخیلی خیلی کارم گیر است و اگر قیمت دارد شماره حساب بده تا به حساب واریز کنم منتظر هستم دوست عزیز
    yahya_inlucky2006@yahoo.com

  13. #13

    Angry

    با سلام به همگی
    من تویه restore کردن به error
    Msg 233, Level 20, State 0, Line 0
    A transport-level error has occurred when sending the request to the server. (provider: Shared Memory Provider, error: 0 - No process is on the other end of the pipe.)
    برخوردم چه کار کنم


  14. #14

    Thumbs down نقل قول: چگونگی گرفتن Backup و Restore کردن از اطلاعات SQL Server

    نقل قول نوشته شده توسط حرفه ای مشاهده تاپیک
    بچه ها من یک component خوب دارم که یکی دو بار که این سوال مطرح شد گداشتم روی سایت چند وقتی از اون استفاده می کنم از کل بانک اطلاعاتی به راحتی در حال استفاده کپی می گیرم
    اگه خاستید دوباره روی سایت می گذارم

    می تونی از دستور Backup database و restore database هم استفاده کنی به راحتی جواب می ده
    سلام می خواهم این دو کامپوننت را برایم ارسال کنید
    nadercpu@yahoo.com

  15. #15
    کاربر دائمی آواتار matinebi
    تاریخ عضویت
    آبان 1386
    محل زندگی
    نیشابور
    پست
    433

    نقل قول: چگونگی گرفتن Backup و Restore کردن از اطلاعات SQL Server

    try
    if SaveDialog1.Execute then
    ADOConnection1.Execute('backup database Pubs to disk='''+SaveDialog1.FileName+'''');
    except
    MessageDlg('عملیات پشتیبان گیری با شکست مواجه شد',mtError,[mbOK],0);
    end;


    با این کدی که قرار داده اید پس از هر بار گرفتن بکاپ حجم فایل بکاپ دو برابر میشه
    لطفا راهنمایی کنید

  16. #16

    نقل قول: دوست عزیز اگر این کامپننت را بگذاری لطف میکنی

    دوست عزیز اگر این کامپننت را بگذاری لطف میکنی و اگر برای من این کامپوننت را با کد بکاپ و ریستور را به من ایمل کنی از شما یک دنیا ممنون میشوم sahar_msi17@yahoo.com

  17. #17
    کاربر دائمی آواتار saied_genius
    تاریخ عضویت
    آبان 1386
    محل زندگی
    IRAN فعلاً ...
    پست
    595

    نقل قول: چگونگی گرفتن Backup و Restore کردن از اطلاعات SQL Server

    براي RESTORE كرد ديتابيس SQL شما بايد ابتدا دسترسي به بانك را محدود به يك دسترسي نماييد. (كه آ ن هم دسترسي خود Restore است)

    و سپس اقدام به RESOTRE نماييد.

    براي دسترسي محدود :


    ALTER DATABASE MyDatabase SET SINGLE_USER


    و يا


    EXEC sp_dboption 'MyDataBaseName','single user','TRUE'


    و سپس از هر نوع RESTORE كه دوست داري استفاده كن.

    همان RESTORE كه استفاده كرده اي خوب است از همان استفاده كن.
    و يا از لينك زير استفاده كنيد.

    https://barnamenevis.org/showth...=120434&page=3

    **نكته: تنظيم ديتابيس به حالت تك كاربره پس از بازيابي اطلاعات به صورت اتوماتيك به حالت چند كاربره باز مي گردد.

    موفق باشيد.

  18. #18
    کاربر دائمی آواتار java.source.ir
    تاریخ عضویت
    اردیبهشت 1388
    پست
    209

    Post نقل قول: چگونگی گرفتن Backup و Restore کردن از اطلاعات SQL Server

    نقل قول نوشته شده توسط majid_afra222 مشاهده تاپیک
    سلام
    کدهای نوشته شده توسط دوستان تنها در حالتیکه بر روی سرور دستور اجرا شود صحیح است
    ولی اگر میخواهی از روی کلاینتها هم اجازه Backup و Restore بدی بهتره کد زیر رو استفاده کنی
    همه Backup ها بر روی سرور و در پوشه ای به نام Backup در محل فیزیکی خود بانک اطلاعاتی ایجاد میشود

    مثلا برای Northwind

    تعیین محل فیزیکی بانک روی سرور راه دور
    رشته پرس و جوی استفاده شده
    SELECT filename FROM sysdatabases WHERE name = 'Northwind'

    مسیر فیزیکی بر روی سرور برای بانک انتخاب شده
    E:\Program Files\Microsoft SQL Server\MSSQL\data

    ایجاد پوشه فیزیکی جدید برای پشتیبانها روی سرور با دستور
    EXEC master..xp_cmdshell [md "E:\Program Files\Microsoft SQL Server\MSSQL\data\Backup"]

    تهیه پشتیبان از بانک اطلاعاتی با استفاده از دستور
    BACKUP DATABASE [Northwind] TO DISK = 'E:\Program Files\Microsoft SQL Server\MSSQL\data\Backup\BackupNorthwind_Bak.bak' WITH INIT, NAME = N'Northwind_Bak', STATS = 10

    برای بازیابی بانک اطلاعاتی
    رفتن به مود تک کاربره با استفاده از پرس و جوی زیر
    EXEC sp_dboption 'Northwind', 'single user', 'true'

    تعیین محل فیزیکی بانک روی سرور راه دور
    رشته پرس و جوی استفاده شده
    SELECT filename FROM sysdatabases WHERE name = 'Northwind'

    مسیر فیزیکی بر روی سرور برای بانک انتخاب شده
    E:\Program Files\Microsoft SQL Server\MSSQL\data

    بازیابی اطلاعات با استفاده از پرس و جوی زیر
    RESTORE DATABASE [Northwind] FROM DISK = 'E:\Program Files\Microsoft SQL Server\MSSQL\data\Backup\BackupNorthwind_Bak.bak' WITH REPLACE , NOUNLOAD , STATS = 10, RECOVERY

    خروج از مود تک کاربره با استفاده از پرس و جوی زیر
    EXEC sp_dboption 'Northwind', 'single user', 'false'
    سلام
    با تشکر از پاسخ مفید شما در این رابطه. آقا خیلی به دردم خورد. امیدوارم همیشه در تمام مراحل زندگیتان موفق باشید.

  19. #19

    نقل قول: چگونگی گرفتن Backup و Restore کردن از اطلاعات SQL Server

    سلام
    من وتی ری استور می کنم و به وضعیت سینگل یوزر رفت دیگه به وضعیت عادی بر نمی گرده
    چطور می تونم بعد از عملیات ریستور یوزر را به وضعیت عادی برگردانم؟
    به علاوه اینکه من این عملیاتها را در برنامه اصلی نتونستم اجرا کنم و مجبور به ساخت یه اپلیکیشن جدید شدم .
    همچنین چطور میشه از یه کاربر با پسورد پشتیبان گیری و ریستور کرد .
    ممنون

  20. #20
    کاربر دائمی آواتار java.source.ir
    تاریخ عضویت
    اردیبهشت 1388
    پست
    209

    Smile نقل قول: چگونگی گرفتن Backup و Restore کردن از اطلاعات SQL Server

    سلام
    emdadgar_shahed عزیز؛ در رابطه با سوال اولتون باید به صورت زیر عمل نمایید تا بانک شما از حالت تک کاربره خارج شود (این دستور را بعد از انجام عملیات restore قرار دهید.):
    EXEC sp_dboption 'Northwind', 'single user', 'false'


    اگر بخواهید دستورات اشاره شده را در محیط SQL Server انجام دهید باید ابتدا یک Store Procedure ایجاد نمایید و سپس دستورات زیر را در آن وارد نمایید:
    عملیات پشتیبان گیری:
    CREATE PROCEDURE backupOP
    @destination nvarchar(900),
    @fileName nvarchar(900)
    as
    BACKUP DATABASE [IIMDB]
    TO DISK = @destination
    WITH INIT, NAME = @fileName, STATS = 10;


    عملیات بازیابی:
    CREATE PROCEDURE restoreOP
    @destination nvarchar(900)
    as
    EXEC sp_dboption 'IIMDB', 'single user', 'true';

    RESTORE DATABASE [IIMDB]
    FROM DISK = @destination
    WITH REPLACE , NOUNLOAD , STATS = 10, RECOVERY;

    EXEC sp_dboption 'IIMDB', 'single user', 'false';


    موفق و سربلند باشید.
    آخرین ویرایش به وسیله java.source.ir : چهارشنبه 01 مهر 1388 در 16:59 عصر دلیل: غلط تایپی

  21. #21

    نقل قول: چگونگی گرفتن Backup و Restore کردن از اطلاعات SQL Server

    1- اگه بخوام از کل دیتابیس Backup بگیرم باید از روش بالا استفاده کنم؟
    آخه برنامه ای که دارم مینویسم تا دلتون بخواد Table داره...
    اگه بخوام از تک تک جدول ها جداگانه Backup بگیرم تا فردا طول میکشه...
    2- برای Restore کردن ، به چه صورت اطلاعات رو برمیگردونه؟
    منظورم اینه که Append میکنه یا جایگزین میکنه؟ درکل : چه بلایی به سر رکوردهای تکراری میاد؟
    و به چه صورت Restore کنم که رکورد تکراری نداشته باشم؟
    آخه توی چند قسمت نیاز هست که به همون جدول Restore کنم...

  22. #22

    نقل قول: چگونگی گرفتن Backup و Restore کردن از اطلاعات SQL Server

    سلام دوستان
    من موقع restore کردن اطلاعات یک لودینگ گذاشتم ولی در زمان انجام restore برنامه هنگ میکنه و کار restore انجام میشه و بعد از اینکه عملیات تموم شد تازه لودینگ شروع به حرکت میکنه !

    میشه راهنمایی کنید چطور میتونم همزمان و در حال بازگشت اطلاعات لودینگ هم کار کنه .
    ممنون .

  23. #23
    کاربر دائمی آواتار saied_genius
    تاریخ عضویت
    آبان 1386
    محل زندگی
    IRAN فعلاً ...
    پست
    595

    نقل قول: چگونگی گرفتن Backup و Restore کردن از اطلاعات SQL Server

    از Multi threading براي restore استفاده کنيد.

    موفق باشيد.

  24. #24

    نقل قول: چگونگی گرفتن Backup و Restore کردن از اطلاعات SQL Server

    با سلام خدمت دوستان
    چگونه مي توان بانك sql را restore كنم
    --------------------
    لطفا كد بازيابي در سي شارپ ساده برام بفرستيد ممنونم
    آخرین ویرایش به وسیله ss_sss733 : سه شنبه 02 شهریور 1389 در 16:36 عصر دلیل: این پست به دلیل تکراری بودن به طور خودکار ادغام شده است.

  25. #25
    کاربر تازه وارد آواتار YkA1363
    تاریخ عضویت
    خرداد 1390
    محل زندگی
    خراسان رضوي
    پست
    64

    نقل قول: چگونگی گرفتن Backup و Restore کردن از اطلاعات SQL Server

    نقل قول نوشته شده توسط ahmadr مشاهده تاپیک
    می تونی از این استفاده کنی :


    try
    if SaveDialog1.Execute then
    ADOConnection1.Execute('backup database Pubs to disk='''+SaveDialog1.FileName+'''');
    except
    MessageDlg('عملیات پشتیبان گیری با شکست مواجه شد',mtError,[mbOK],0);
    end;<span dir=ltr></span>
    اين كد خيلي باحال بود براي بازيابي هم يك open dialog گذاشتم و كد زير رو نوشتم:
    if (openDialog1.Execute) then begin
    dm.ADOConnection1.Execute('use master RESTORE DATABASE db FROM DISK='''+OpenDialog1.FileName+'''');

    فقط دو تا سووال:
    1: وقتي فايل رو بازيابي مي كنم بايد حتما برنامه رو ببندم و باز كنم تا بتونم از برنامم استفاده كنم. براي رفع مشكل adoconnection را يك بار باز و بسته كردم مشكل حل شد ولي اطلاعاتي كه در ركورد از كمبوباكس وارد شده بود(چند تا آيتم ثابت داخل كمبوباكس وارد كردم) رو با حروف ناشناخته نشون مي ده كه اون هم با اجراي دوباره برنامه درست مي شه. چطور مي تونم اين مشكل رو رفع كنم؟
    2ـ اين روش راه خوبي براي backup گرفتن هست يا نه؟

تاپیک های مشابه

  1. مشکل در Restore نمودن فایل Backup
    نوشته شده توسط Neeloofar در بخش SQL Server
    پاسخ: 11
    آخرین پست: دوشنبه 08 شهریور 1389, 13:54 عصر
  2. BACKUP و RESTORE در SQL Server 2005
    نوشته شده توسط amirferdowsi در بخش دسترسی به داده ها (ADO.Net و LINQ و ...)
    پاسخ: 3
    آخرین پست: جمعه 21 دی 1386, 12:33 عصر
  3. Restore کردن Backup
    نوشته شده توسط az-navaei در بخش SQL Server
    پاسخ: 2
    آخرین پست: دوشنبه 21 آبان 1386, 12:18 عصر
  4. Restore کردن Backup sql server
    نوشته شده توسط Shahriyari در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 1
    آخرین پست: سه شنبه 26 تیر 1386, 15:48 عصر
  5. backup&restore
    نوشته شده توسط ebi_isf در بخش SQL Server
    پاسخ: 1
    آخرین پست: یک شنبه 19 آذر 1385, 15:05 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •