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

نام تاپیک: مشکل بازیابی از پشتیبان گرفته شده

  1. #1
    کاربر دائمی آواتار mohamadlvs
    تاریخ عضویت
    اسفند 1388
    محل زندگی
    شیراز
    پست
    131

    Question مشکل بازیابی از پشتیبان گرفته شده

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

    SqlConnection con = new SqlConnection("Server=(local);uid=sa;pwd=;database =master");
    SqlCommand cmd = new SqlCommand("restore database Gold_Database from disk='" + textBox1.Text + "'", con);
    con.Open();
    cmd.ExecuteNonQuery();
    con.Close();

    لطفن راهنمایی کنیدError.JPG

  2. #2
    کاربر دائمی آواتار mohamadlvs
    تاریخ عضویت
    اسفند 1388
    محل زندگی
    شیراز
    پست
    131

    نقل قول: مشکل بازیابی از پشتیبان گرفته شده

    کسی چیزی به خاطرش خطور نمی کنه؟!

  3. #3
    کاربر دائمی آواتار abdullah20
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    اصفهان
    پست
    1,211

    نقل قول: مشکل بازیابی از پشتیبان گرفته شده

    پشتیبان گیری

    string strBack = "Backupname.bak";
    SqlCommand scom = new SqlCommand("BACKUP DATABASE [" + dbname + "] TO DISK ='" + textAddress.text + "\\" + strBack + "'", sc);
    sc.Open();
    scom.ExecuteNonQuery();
    sc.Close();



    بازیابی

    SqlCommand scom = new SqlCommand("use master ALTER DATABASE [" + dbname + "] SET SINGLE_USER WITH ROLLBACK IMMEDIATE RESTORE DATABASE [" + dbname + "] FROM DISK = '" + textAddress.text + "' ALTER DATABASE [" + dbname + "] SET MULTI_USER", sc);
    sc.Open();
    scom.ExecuteNonQuery();
    sc.Close();

  4. #4
    کاربر دائمی آواتار mohamadlvs
    تاریخ عضویت
    اسفند 1388
    محل زندگی
    شیراز
    پست
    131

    نقل قول: مشکل بازیابی از پشتیبان گرفته شده

    بازم همون خطا رو روی خط اجرای کوئری می ده

    The tail of the log for the database "Gold_Database" has not been backed up. Use
    BACKUP LOG WITH NORECOVERY to backup the log if it contains work you do not want
    to lose. Use the WITH REPLACE or WITH STOPAT clause of the RESTORE statement to
    just overwrite the contents of the log.
    RESTORE DATABASE is terminating abnormally.
    Changed database context to 'master'.

  5. #5

    نقل قول: مشکل بازیابی از پشتیبان گرفته شده

    برای من هم همین ارور را میده لطفا بگید مشکل از چیه

  6. #6
    کاربر دائمی آواتار abdullah20
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    اصفهان
    پست
    1,211

    نقل قول: مشکل بازیابی از پشتیبان گرفته شده

    به اخر رشته Restore خودتون WITH REPLACE را اضافه کنید مشکل 100درصد حل می شود

  7. #7
    کاربر دائمی آواتار mohamadlvs
    تاریخ عضویت
    اسفند 1388
    محل زندگی
    شیراز
    پست
    131

    نقل قول: مشکل بازیابی از پشتیبان گرفته شده

    بازم این خطا رو میده
    Incorrect syntax near 'REPLACE'.
    SqlConnection con = new SqlConnection("Server=(local);uid=sa;pwd=;database  =Gold_Database");
    SqlCommand cmd = new SqlCommand("use master ALTER DATABASE [Gold_Database] SET SINGLE_USER WITH ROLLBACK IMMEDIATE RESTORE DATABASE [Gold_Database] FROM DISK = N'D:\\Gold_Database.bak' ALTER DATABASE [Gold_Database] SET MULTI_USER WITH REPLACE", con);
    con.Open();
    cmd.ExecuteNonQuery();
    con.Close();

  8. #8
    کاربر دائمی آواتار abdullah20
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    اصفهان
    پست
    1,211

    نقل قول: مشکل بازیابی از پشتیبان گرفته شده

      private void Restore(string strfilename)
    {
    try
    {

    string command = "ALTER DATABASE alarm SET SINGLE_USER with ROLLBACK IMMEDIATE " +
    "use master " +
    " RESTORE DATABASE alarm FROM DISK='" + strfilename + "'WITH REPLACE";


    this.Cursor = Cursors.WaitCursor;
    SqlConnection con = new SqlConnection();
    con.ConnectionString = connection;
    if (con.State != ConnectionState.Open)
    con.Open();
    SqlCommand cmd = new SqlCommand(command, con);
    cmd.ExecuteNonQuery();

    this.Cursor = Cursors.Default;
    MessageBox.Show("بازیابی اطلاعات با موفقیت انجام شد");

    }
    catch(Exception ex)
    {
    MessageBox.Show(ex.Message );
    }
    }




     private void buttonRestore_Click(object sender, EventArgs e)
    {
    string strfilename = string.Empty;
    openFileDialog1.Filter = @"SQL Backup files files(*.BAK)|*.BAK|All files(*.*)|*.*";
    openFileDialog1.Title = "Restore SQL File";
    if (openFileDialog1.ShowDialog() == DialogResult.OK)
    strfilename = openFileDialog1.FileName;
    Restore(strfilename);
    }

  9. #9
    کاربر دائمی آواتار mohamadlvs
    تاریخ عضویت
    اسفند 1388
    محل زندگی
    شیراز
    پست
    131

    نقل قول: مشکل بازیابی از پشتیبان گرفته شده

    ممنون با این کد آخری حل شد ولی من که ندونستم برای چی هر چی کوئری می نوشتم جواب نمی داد ولی با این جواب داد؟!

  10. #10

    نقل قول: مشکل بازیابی از پشتیبان گرفته شده

    با سلام و خسته نباشید به همه ی دوستان گرامی
    من با این کد بازیابی پشتیبان رو نوشتم که از کد هایی خودتان گذاشتید ، هست:



     
    try
    {
    string command = "ALTER DATABASE Ara SET MULTI_USER with ROLLBACK IMMEDIATE RESTORE DATABASE Ara FROM DISK='" + txtadress.Text + "'WITH REPLACE";
    this.Cursor = Cursors.WaitCursor;
    SqlConnection con = newSqlConnection();
    con.ConnectionString = "Data Source= .;Initial Catalog=master;Integrated Security=True";
    if (con.State != ConnectionState.Open)
    con.Open();
    SqlCommand cmd = newSqlCommand(command, con);
    cmd.ExecuteNonQuery();
    this.Cursor = Cursors.Default;
    MessageBox.Show("بازيابي اطلاعات با موفقيت انجام شد");
    }
    catch (Exception ex)
    {
    MessageBox.Show(ex.Message);
    }


    ولی این ارور رو میده :

    Exclusive access could not be obtained because the database is in use.
    RESTORE DATABASE is terminating abnormally.

    لطفا" هر چه سریعتر کمکم کنید ممنون می شم .

  11. #11
    کاربر دائمی آواتار roolinjax
    تاریخ عضویت
    تیر 1390
    محل زندگی
    جایی که آرامش باشد.
    سن
    35
    پست
    312

    نقل قول: مشکل بازیابی از پشتیبان گرفته شده

    با سلام
    دوست عزیز این خطا واسه اینه که کانکشن باز داری
    این خط رو به اول برنامه ات اضافه کن درست میشه :
                    SqlConnection.ClearAllPools();

  12. #12

    نقل قول: مشکل بازیابی از پشتیبان گرفته شده

    نقل قول نوشته شده توسط roolinjax مشاهده تاپیک
    با سلام
    دوست عزیز این خطا واسه اینه که کانکشن باز داری
    این خط رو به اول برنامه ات اضافه کن درست میشه :
     SqlConnection.ClearAllPools();
    مشکلم حل شد ، خیلی خیلی ممنون .

  13. #13
    کاربر دائمی آواتار roolinjax
    تاریخ عضویت
    تیر 1390
    محل زندگی
    جایی که آرامش باشد.
    سن
    35
    پست
    312

    نقل قول: مشکل بازیابی از پشتیبان گرفته شده

    ایشالا همه مشکلات جوونا به همین راحتی و با یه خط کد حل بشه !!!!!
    موفق باشید

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

  1. مشکل در بازیابی فایل پشتیبان دیتابیس
    نوشته شده توسط sara_aryanfar در بخش C#‎‎
    پاسخ: 3
    آخرین پست: چهارشنبه 17 اسفند 1390, 16:17 عصر
  2. پاسخ: 1
    آخرین پست: شنبه 15 بهمن 1390, 16:43 عصر
  3. سوال: مشکل در restore بکاپ گرفته شده از دیتابیس اکسس
    نوشته شده توسط mohsencom در بخش VB.NET
    پاسخ: 5
    آخرین پست: پنج شنبه 11 فروردین 1390, 02:08 صبح
  4. سوال: مشکل در نمایش متن فارسی گرفته شده از GridView
    نوشته شده توسط mirhosseini در بخش ASP.NET Web Forms
    پاسخ: 6
    آخرین پست: چهارشنبه 09 تیر 1389, 09:30 صبح
  5. بازیابی فایل پشتیبان شده
    نوشته شده توسط navid1n2000 در بخش دسترسی به داده ها (ADO.Net و LINQ و ...)
    پاسخ: 1
    آخرین پست: سه شنبه 26 خرداد 1388, 20:01 عصر

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

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