MySqlBackup.Net

VB.NET 2025-08-08

MySqlBackup.Net

用于备份和还原MySQL数据库的多功能工具,在C#,VB.NET和ASP.NET中。

最新版本:v2.6.4(2025年7月14日)
更改日志


概述

MySqlBackup.Net是一个.NET库(DLL),旨在备份和还原MySQL数据库。与多个MySQL连接器兼容-Mysql.data.dll,MySqlConnector.dll和Devart.express.mysql.dll-它为MySqlDump等工具提供了一种程序化替代方案,可在.NET环境中提供更大的控制和灵活性。

该库在C#开发的情况下支持任何.NET语言(例如VB.NET,F#),并且在MySqlDump.exe或MySQL Workbench的方案中脱颖而出,例如基于Web的应用程序(ASP.NET)或最终用户工具具有简化的接口。


关键功能

  • 备份和恢复MySQL数据库。
  • 支持所有.NET语言。
  • 通过文件或MemoryStream导出/导入。
  • 有条件的行导出(过滤表/行)。
  • 进度报告出口和导入任务。
  • 灵活行导出模式:插入,插入忽略,替换,重复的密钥更新,更新。
  • ASP.NET和Web服务集成的理想选择。

入门

安装

下载

从以下内容获取最新版本:github版本

Nuget软件包

通过Nuget软件包管理器安装:

  • mysqlconnector
    pm> install-package MySqlBackup.Net .mysqlConnector
    https://www.**nuge*t.org/packages/mysqlbackup-.net.mysqlconnector/

  • mysql.data连接器
    pm> install-package MySqlBackup.Net
    https://www.n**ug*et.org/packages/mysqlbackup net/

  • Devart Express连接器
    pm> install-pakeAge MySqlBackup.Net .devartExpress
    https://www.n**ug*et.org/packages/mysqlbackup..net.devartexpress/

添加到您的项目

请参阅详细指南:
如何将此库添加到您的项目中


基本用法

备份数据库

 string constr = "server=localhost;user=root;pwd=1234;database=test1;convertzerodatetime=true;" ;
string filePath = @"C:backup.sql" ;

using ( var conn = new MySqlConnection ( constr ) )
using ( var cmd = conn . CreateCommand ( ) )
using ( var mb = new MySqlBackup ( cmd ) )
{
    conn . Open ( ) ;
    mb . ExportToFile ( filePath ) ;
} 

还原数据库

 string constr = "server=localhost;user=root;pwd=1234;database=test1;convertzerodatetime=true;" ;
string filePath = @"C:backup.sql" ;

using ( var conn = new MySqlConnection ( constr ) )
using ( var cmd = conn . CreateCommand ( ) )
using ( var mb = new MySqlBackup ( cmd ) )
{
    conn . Open ( ) ;
    mb . ImportFromFile ( filePath ) ;
} 

为什么要MySqlBackup.Net ?

与MySQL Workbench(以开发人员为中心)或mysqldump.exe(在Web环境中受到限制)不同, MySqlBackup.Net提供:

  • 最终用户简单性:一单击备份体验的预设参数。
  • Web兼容性:在ASP.NET中无缝运行,绕过对可执行文件的托管限制。
  • 编程控制:.NET内的微调输出处理。

依赖性

MySqlBackup.Net需要以下mysql连接器之一:

连接器 来源 执照 dlls
mysqlconnector mysqlconnector 麻省理工学院 mysqlConnector.dll
mysql.data MySQL连接器/网 GPL mysql.data.dll
Devart Express mysql的互联网 定制(常见问题解答) devart.data.dll,devart.data.mysql.dll

兼容性

我们的目标是MySqlBackup.Net实现100%SQL合规性,确保与MySqlDump和MySQL.Exe无缝兼容,以备备份和还原操作。版本2.6引入了关键改进,解决了以前版本中的某些缺陷,并与MySqlDump生成的文件兼容挑战。如果您遇到任何不兼容,我们欢迎通过GitHub问题反馈,以帮助我们完善并坚持这一目标。


配置提示

Unicode支持

  • 始终在不支持UTF8MB4的旧MySQL版本中使用UTF8MB4的默认字符集或UTF8。
  • 建议在处理Null DateTime值时使用ConvertzerodateTime = true在连接字符串中以兼容。

性能基准

对于416 MB数据库(400,000行,4个表,Innodb),在Intel Core i7-4770s上(3.10GHz,16GB RAM,SSD SASD SAMSUNG 870 EVO 500GB):

任务 工具 avg。时间 文件大小
备份 MySqlBackup.Net (并行) 〜10.21 571.588 MB
备份 MySqlBackup.Net (单) 〜15.72s 571.588 MB
备份 mysqldump.exe 〜6.76 566.976 MB
恢复 MySqlBackup.Net 〜35.87S -
恢复 mysql.exe 〜32.76s -

MySqlBackup.Net v2.6提供了竞争性能,尤其是在并行模式下,对以前的版本的改进有了显着改进。完整详细信息:性能基准Wiki。


执照

MySqlBackup.Net在不执行的情况下发布,使其免费使用。


结论

MySqlBackup.Net为MySQL数据库管理提供了强大的。新网络解决方案。无论是用于桌面应用程序,Web服务还是自动备份,它都是由全球社区为全球社区构建的工具箱的多功能补充。

在Github上探索更多!

下载源码

通过命令行克隆项目:

git clone https://github.com/MySqlBackupNET/MySqlBackup.Net.git