陪玩系統原始碼中mysql資料庫備份還原的實現程式碼

雲豹科技程式設計師發表於2021-10-26

陪玩系統原始碼開發過程中,系統資料的儲存會用到mysql資料庫,一般mysql資料庫儲存的都是靜態的資料,為了防止發生意外導致陪玩系統原始碼中資料的丟失,需要mysql資料庫的備份和還原等操作,具體是如何實現的呢?

引用dll

MySql.Data.dll, MySqlbackup.dll

建靜態類

public static class mysql
{
public static string constr = "database=test;Password=密碼;user ID=root;server=ip地址";
public static MySqlConnection conn = new MySqlConnection(constr);
}

陪玩系統原始碼中mysql資料庫的備份程式碼

DialogResult result = MessageBox.Show("備份路徑預設在當前程式下", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (result == DialogResult.Yes) 
{
    string time1 = System.DateTime.Now.ToString("d").Replace("/", "-");
    string file = ".//mysql/" + time1 + "_test.sql";
    using (MySqlCommand cmd = new MySqlCommand()) 
    {
        using (MySqlBackup mb = new MySqlBackup(cmd)) 
        {
            cmd.Connection = mysql.conn;
            mysql.conn.Open();
            mb.ExportToFile(file);
            mysql.conn.Close();
            MessageBox.Show("已備份");
        }
    }
} else 
{
    return;
}

陪玩系統原始碼中mysql資料庫的還原始碼

string file = textBox1.Text;
if (file == "") 
{
    MessageBox.Show("不能為空");
    return;
}
DialogResult result = MessageBox.Show("確定還原嗎?", "還原", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (result == DialogResult.Yes) 
{
    try 
    {
        using (MySqlCommand cmd = new MySqlCommand()) 
        {
            using (MySqlBackup mb = new MySqlBackup(cmd)) 
            {
                cmd.Connection = mysql.conn;
                mysql. conn.Open();
                mb.ImportFromFile(file);
                mysql. conn.Close();
                MessageBox.Show("已還原");
            }
        }
    }
    catch (Exception ex) 
    {
        MessageBox.Show(ex.Message);
    }
} else 
{
    return;
}

以上便是“如何實現陪玩系統原始碼中mysql資料庫的備份還原?”的全部內容,希望對大家有幫助。

本文轉載自網路,轉載僅為分享乾貨知識,如有侵權歡迎聯絡雲豹科技進行刪除處理
原文連結:


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69996194/viewspace-2839382/,如需轉載,請註明出處,否則將追究法律責任。

相關文章