赞
踩
目录
MySqlBackup.NET是一个用C#编写的开源项目,用于执行MySQL数据库的备份和恢复。本文将重点介绍如何构建此库以在CentOS(Linux/Ubuntu)上运行。
这个想法是在.NET Core中构建一个项目并将其发布为Linux包。
MySqlBackup.NET是一个用于备份和恢复MySQL数据库的开源.NET库 (C#/VB.NET)。
在这里,我们正在研究如何在CentOS/Linux上运行MySqlBackup.NET来执行MySQL数据库的备份和恢复。
我们可以用一个简单的控制台应用程序来测试它。
首先创建一个.NET Core Console Linux项目:
检查项目属性,确保项目是使用.NET Core Framework构建的:
安装Nuget包MySqlBackup.NET(带有MySqlConnector):
一个简单的示例代码来测试:
- static void Main(string[] args)
- {
- try
- {
- Console.WriteLine("Enter the MySQL Connection String: ");
- Console.WriteLine();
-
- string constr = Console.ReadLine();
-
- Console.WriteLine();
- Console.WriteLine();
-
- Console.WriteLine(("Begin MySQL backup process..."));
-
- string folder = Environment.CurrentDirectory;
- string file = Path.Combine(folder, "backup.sql");
-
- using (MySqlConnection conn = new MySqlConnection(constr))
- {
- using (MySqlCommand cmd = new MySqlCommand())
- {
- using (MySqlBackup mb = new MySqlBackup(cmd))
- {
- conn.Open();
- cmd.Connection = conn;
-
- mb.ExportToFile(file);
-
- conn.Close();
- }
- }
- }
-
- Console.WriteLine("MySQL backup file saved at: " + file);
- }
- catch (Exception ex)
- {
- Console.WriteLine();
- Console.WriteLine("Error: " + ex.Message);
- }
-
- Console.WriteLine();
- Console.WriteLine("Press any key to exit...");
-
- Console.ReadKey();
- }
接下来,为.NET Core (Linux)发布项目:
有两种方法可以为Linux构建.NET Core项目:
首先,发布项目。
将目标运行时设置为linux-x64:
在上面的示例中,Linux编译的二进制文件位于:
\bin\Release\netcoreapp3.1\publish\linux-x64
复制上述文件夹中的DLL并将其粘贴到您的CentOS中:
在CentOS上,通过以下命令确保您已安装Dotnet运行时:
sudo dnf install dotnet-sdk-<version>
例如:
- sudo dnf install dotnet-sdk-3.1
- sudo dnf install dotnet-sdk-5.0
假设您已将.NET Core DLL文件复制到以下文件夹:
/home/<username>/testapp
然后您可以使用以下命令测试您的应用程序:
- cd /home/admin/testapp
- dotnet ConsoleApp.dll
.NET Core App也可以在不安装dotnet runtime的情况下运行,即将项目编译为单个“自包含”二进制文件。
这是发布“自包含”二进制文件的屏幕截图:
这是发布后的示例,只有1个单个文件:
将编译好的二进制文件复制到CentOS。
在终端上,浏览到包含自包含二进制文件的文件夹,例如:
cd /home/admin/testapp
接下来,是允许文件的执行权限:
sudo chmod 777 ConsoleApp2
运行应用程序:
./ConsoleApp2
有关发布“自包含”二进制文件的更多信息,请在此处阅读更多信息。
https://www.codeproject.com/Articles/5324213/Backup-Restore-MySQL-database-on-CentOS-Linux-Ubun
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。