Backing up Database in MySQL using C#

前端 未结 6 1226
有刺的猬
有刺的猬 2020-12-14 04:06

I created a Winforms in order to backup my Database. Then When I run my program it gives an Win32Exception was unhandled. \"The system cannot find the file specified\" Altho

6条回答
  •  挽巷
    挽巷 (楼主)
    2020-12-14 05:01

    You can use MySqlBackup.NET as alternative to MySqlDump
    Documentation:
    http://www.codeproject.com/Articles/256466/MySqlBackup-NET-MySQL-Backup-Solution-for-Csharp-V
    https://github.com/MySqlBackupNET/MySqlBackup.Net

    Sample codes:

    Backup a MySQL database

    using MySql.Data.MySqlClient; 
    

    then the code,

    private void Backup()
    {
        string constring = "server=localhost;user=root;pwd=qwerty;database=test;";
        string file = "C:\\backup.sql";
        using (MySqlConnection conn = new MySqlConnection(constring))
        {
            using (MySqlCommand cmd = new MySqlCommand())
            {
                using (MySqlBackup mb = new MySqlBackup(cmd))
                {
                    cmd.Connection = conn;
                    conn.Open();
                    mb.ExportToFile(file);
                    conn.Close();
                }
            }
        }
    }
    


    Restore a MySQL database

    private void Restore()
    {
        string constring = "server=localhost;user=root;pwd=qwerty;database=test;";
        string file = "C:\\backup.sql";
        using (MySqlConnection conn = new MySqlConnection(constring))
        {
            using (MySqlCommand cmd = new MySqlCommand())
            {
                using (MySqlBackup mb = new MySqlBackup(cmd))
                {
                    cmd.Connection = conn;
                    conn.Open();
                    mb.ImportFromFile(file);
                    conn.Close();
                }
            }
        }
    }
    

    Update:
    I am one of the author of this library.

提交回复
热议问题