C#和#x2B;MySql+;SSL=";由于意外的数据包格式,握手失败;
我正在尝试从一个简单的.NET 4.0 C#控制台应用程序连接到MySql数据库:C#和#x2B;MySql+;SSL=";由于意外的数据包格式,握手失败;,c#,mysql,C#,Mysql,我正在尝试从一个简单的.NET 4.0 C#控制台应用程序连接到MySql数据库: using MySql.Data.MySqlClient; namespace MySqlTest { class Program { static void Main(string[] args) { using (var connection = new MySqlConnection( "Server=
using MySql.Data.MySqlClient;
namespace MySqlTest
{
class Program
{
static void Main(string[] args)
{
using (var connection = new MySqlConnection(
"Server=xxx.xxx.xxx.xxx;Database=my_database;Uid=my_login;Pwd=my_password;" +
"CertificateFile=C:\\Users\\myuser\\Documents\\Visual Studio 2013\\Projects\\Sandbox\\MySqlTest\\certificate.pfx;" +
"CertificatePassword=certificate_password;SSL Mode=Required;"))
{
connection.Open();
}
}
}
}
当我运行应用程序时,我得到一个System.IO.IOException:“由于意外的数据包格式,握手失败”
我从其他3个文件创建了.pfx文件,首先运行以下命令:
.\openssl.exe pkcs12 -export -out certificate.pfx -inkey user.key -in user.crt -certfile ca.crt
在第二次尝试中,我将所有三个文件转换为.pem,然后运行相同的命令(-请参阅“创建用于.NET客户端的证书文件”部分):
我使用相同的三个文件从MySql Workbench连接到数据库,它成功了。我不知道为什么我的应用程序会出现这种异常。
有人有什么想法吗
我使用的是从NuGet下载的MySql.Data 6.9.6驱动程序
谢谢
.\openssl.exe pkcs12 -export -out certificate.pfx -inkey user.pem -in user.pem -certfile ca.pem