当前位置: 首页 > 编程语言 > C#

使用C#在MySQL中备份数据库Share

时间:2023-04-10 15:40:21 C#

在MySQL中使用C#备份数据库然后,当我运行我的程序时,它给出了一个未处理的Win32Exception。“系统找不到指定的文件”,尽管该文件存在并导致该异常。这是关于我使用System.Diagnostics的问题的代码;privatevoidbtnProceed_Click(objectsender,EventArgse){path=@"D:MySQLMySQLServer5.5binmysqldump.exe-u"+txtBoxDBUsername.Text+@"-p"+txtBoxDBName.Text+@">D:C#ClientSalesmate-EMCSalesMateBackup"+maskeTxtBoxDBFile.Text+@"";Processp=newProcess();p.StartInfo.FileName=路径;p.开始();您可以使用MySqlBackup.NET替代MySqlDump文档:http://www.codeproject.com/Articles/256466/MySqlBackup-NET-MySQL-Backup-Solution-for-Csharp-Vhttps://github.com/MySqlBackupNET/MySqlBackup.Net示例代码:备份MySQL数据库privatevoidBackup(){stringconstring="server=localhost;user=root;pwd=qwerty;database=test;";字符串文件="C:\backup.sql";使用(MySqlConnectionconn=newMySqlConnection(constring)){使用(MySqlCommandcmd=newMySqlCommand()){使用(MySqlBackupmb=newMySqlBackup(cmd)){cmd.Connection=conn;conn.Open();mb.ExportToFile(文件);conn.Close();}}}}恢复MySQL数据库privatevoidRestore(){stringconstring="server=localhost;user=root;pwd=qwerty;database=test;";字符串文件="C:\backup.sql";使用(MySqlConnectionconn=newMySqlConnection(constring)){使用(MySqlCommandcmd=newMySqlCommand()){使用(MySqlBackupmb=newMySqlBackup(cmd)){cmd.Connection=conn;conn.Open();mb.ImportFromFile(文件);conn.Close();}}}}更新:我是这个库的作者之一,我试过代码但在运行前遇到了问题。异常是-System.Windows.Forms.dll中发生类型为“System.IO.FileLoadException”的未处理异常附加信息:无法加载文件或程序集“MySql.Data,Version=6.5.4.0,Culture=neutral,PublicKeyToken=c5687fc88969c44d'或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(HRESULTexception:0x80131040)我相信你必须提到用户、密码、数据库名称和目标路径..stringpath=@"C:ProgramFilesMySQLMySQLServer5.5binmysqldump.exe-u"+txtBoxDBUsername.Text+@"-p"+txtBoxDBName.Text+@">"+txtBoxDBName.Text+@".sql";backup:#mysqldump-uroot-p[root_password][database_name]>dumpfilename.sqlrestore:#mysql-uroot-p[root_password][database_name]使用mysqldump备份和恢复MySQL数据库正确版本的代码更正引号是:path=@"""D:MySQLMySQLServer5.5binmysqldump.exe""-u"+txtBoxDBUsername.Text+@"-p"+txtBoxDBName.Text+@">""D:C#ClientSalesmate-EMCSalesMateBackup"+maskeTxtBoxDBFile.Text+@"""";为了更好的可读性:path=$@"""D:MySQLMySQLServer5.5binmysqldump.exe""-u{txtBoxDBUsername.Text}-p{txtBoxDBName.Text}>""D:C#ClientSalesmate-EMCSalesMateBackup{maskeTxtBoxDBFile.Text}""";ProcessStartInfopsi=newProcessStartInfo();psi.FileName=@"C:\xamppmysqlbinmysql.exe";psi.RedirectStandardInput=true;psi.重定向标准输出=假;psi.CreateNoWindow=true;psi.Arguments=string.Format(@"-u{0}-p{1}-h{2}{3}这对我有用只要你备份了.sql文件你可以试试这个。上面是C#学习教程:使用C#备份MySQL中的数据库所有内容分享,如果对大家有用,还需要详细了解C#学习教程,希望大家多多关注---publicvoidBackUpData(字符串文件){使用(MySqlConnectioncon=newMySqlConnection{ConnectionString=config}){使用(MySqlCommandcmd=newMySqlCommand{Connection=con}){使用(MySqlBackupmb=newMySqlBackup{Command=cmd}){try{con.Open();try{mb.ExportToFile(file);}catch(MySqlExceptionex){msgErr(ex.Message+"sqlqueryerror.");返回;}}catch(MySqlExceptionex){msgErr(ex.Message+"连接错误。");return;}}}}}本文采集自网络,不代表立场,如涉及侵权,请点击右侧联系管理员删除。如需转载,请注明出处: