我正在尝试连接到Azure MariaDB实例,并且似乎UID被我的本地IP地址覆盖。从文档here看来,我需要使用实例的主机名连接到我的Azure MariaDB实例。
Site可以在Docker托管的MariaDB实例上正常运行。这里唯一的增量是托管的Azure MariaDB实例。
"Data": {
"ActivityDb": "Server=MYDBHOST.mariadb.database.azure.com;Port=3306;Database=activity;Uid=delirium@MYDBHOST;Pwd=#NOT_THAT_STUPID;SslMode=Preferred;",
"ApplicationDb": "Data Source=file:Application.db",
"CustomerDb": "Data Source=file:Customers.db",
"ReservationDb": "Data Source=file:Reservations.db"
}
错误:
"Error","properties":{
"Exception":"MySql.Data.MySqlClient.MySqlException (0x80004005):
Access denied for user 'delirium'@'#HOSTIP_REMOVED (using password: YES)\n
at MySqlConnector.Core.ServerSession.SwitchAuthenticationAsync(ConnectionSettings cs, PayloadData payload, IOBehavior ioBehavior, CancellationToken cancellationToken) in C:\\projects\\mysqlconnector\\src\\MySqlConnector\\Core\\ServerSession.cs:line 459
at MySqlConnector.Core.ServerSession.ConnectAsync(ConnectionSettings cs, ILoadBalancer loadBalancer, IOBehavior ioBehavior, CancellationToken cancellationToken) in C:\\projects\\mysqlconnector\\src\\MySqlConnector\\Core\\ServerSession.cs:line 361
at MySql.Data.MySqlClient.MySqlConnection.CreateSessionAsync(Nullable`1 ioBehavior, CancellationToken cancellationToken) in C:\\projects\\mysqlconnector\\src\\MySqlConnector\\MySql.Data.MySqlClient\\MySqlConnection.cs:line 442
at MySql.Data.MySqlClient.MySqlConnection.OpenAsync(Nullable`1 ioBehavior, CancellationToken cancellationToken) in C:\\projects\\mysqlconnector\\src\\MySqlConnector\\MySql.Data.MySqlClient\\MySqlConnection.cs:line 175
at MySql.Data.MySqlClient.MySqlConnection.Open() in C:\\projects\\mysqlconnector\\src\\MySqlConnector\\MySql.Data.MySqlClient\\MySqlConnection.cs:line 161
at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnection(Boolean errorsExpected)","server":"deliriumdb.mariadb.database.azure.com","DeveloperMode":"true","CategoryName":"Microsoft.EntityFrameworkCore.Database.Connection","AspNetCoreEnvironment":"Development","{OriginalFormat}":"An error occurred using the connection to database '{database}' on server '{server}'."}}}}
连接到自托管的MariaDB实例效果很好,这似乎与Azure中的连接字符串被覆盖有关,因为MySQL Explorer可以很好地与凭据配合使用。
我缺少基本知识吗,还是由于托管的数据库名称而引起的Azure怪异问题?