无法从.NET Connector连接到Azure MySQL数据库 [英] Cannot connect to Azure MySQL database from .NET Connector
问题描述
我尝试使用MySQL Workbench和MySQL Shell连接到数据库,它运行正常。现在我尝试使用以下C#代码进行连接:
var connStringBuilder = new MySqlConnectionStringBuilder
{
Server =" creatur -db.mysql.database.azure.com",
Database =" test",
UserID =" creatur_db_main @ creatur-db",
Password =" {my_password}" ;,
SslMode = MySqlSslMode.Preferred,
};
using(MySqlConnection connection = new MySqlConnection(connStringBuilder.ToString()))
{
connection.Open();
connection.Close();
}
在这里,我用密码替换{my_password}到数据库,它在Open方法中给了我一个例外:
MySql.Data.MySqlClient.MySqlException:'使用方法'mysql_native_password'对用户'creatur_db_main @ creatur-db'的主机'creatur-db.mysql.database.azure.com'进行身份验证消息失败:连接字符串可能不正确。请访问portal
以获取参考。
我还尝试了不同的连接字符串:
Server = creatur-db.mysql.database.azure .COM;端口= 3306;数据库=测试; UID = creatur_db_main @ creatur-DB; PWD = {MY_PASSWORD}; SslMode =首选
和
数据库=测试;数据源= creatur-db.mysql.database.azure.com;用户ID = creatur_db_main @ creatur-db;密码= {my_password}
但它们都没有工作。
当我在Visual Studio 2013中使用服务器资源管理器创建新连接时,会发生同样的异常。似乎该错误与.NET Connector有关。我试图使用不同版本的MySQL.Data.dll,.NET Framework和Visual Studio,但没有运气。
< blockquote>
Hi Bohdan,
您可以查看"强制SSL连接"的值吗?在你的服务器上?这可以从"连接安全性"访问。刀片。
我假设您正在关注此文档? https://docs.microsoft.com/en-us/azure/mysql/connect-csharp
谢谢,
Andrea Lam
项目经理
Azure数据
I tried to connect to the database using MySQL Workbench and MySQL Shell and it works fine. Now I am trying to connect using following C# code:
var connStringBuilder = new MySqlConnectionStringBuilder { Server = "creatur-db.mysql.database.azure.com", Database = "test", UserID = "creatur_db_main@creatur-db", Password = "{my_password}", SslMode = MySqlSslMode.Preferred, }; using (MySqlConnection connection = new MySqlConnection(connStringBuilder.ToString())) { connection.Open(); connection.Close(); }
Here I replaced {my_password} with password to the database and it gives me an exception inside Open method:
MySql.Data.MySqlClient.MySqlException: 'Authentication to host 'creatur-db.mysql.database.azure.com' for user 'creatur_db_main@creatur-db' using method 'mysql_native_password' failed with message: The connection string may not be right. Please visit portal for references.
I also tried different connection strings:
Server=creatur-db.mysql.database.azure.com; Port=3306; Database=test; Uid=creatur_db_main@creatur-db; Pwd={my_password}; SslMode=Preferred
and
Database=test; Data Source=creatur-db.mysql.database.azure.com; User Id=creatur_db_main@creatur-db; Password={my_password}
But none of them worked.
The same exception occurs when I create new connection using Server Explorer in Visual Studio 2013. It seems the error has something to do with .NET Connector. I tried to use different versions of MySQL.Data.dll, .NET Framework and Visual Studio but no luck.
Hi Bohdan,
Can you check the value of "Enforce SSL connection" on your server? This can be accessed from the "Connection security" blade.
I'm assuming you're following this doc? https://docs.microsoft.com/en-us/azure/mysql/connect-csharp
Thanks,
Andrea Lam
Program Manager
Azure Data
这篇关于无法从.NET Connector连接到Azure MySQL数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!