不支持Unity HeidiSQL连接认证方式'auth_gssapi_client'

问题描述 投票:0回答:1

我正在尝试将我的 Unity 多人游戏与我的 MariaDB 连接,但出现错误:

MySqlException: Authentication method 'auth_gssapi_client' not supported by any of the available plugins. MySql.Data.MySqlClient.NativeDriver.Open () (at <13314bc2115d4bd2a5d896df29fb7179>:0) MySql.Data.MySqlClient.Driver.Open () (at <13314bc2115d4bd2a5d896df29fb7179>:0) MySql.Data.MySqlClient.Driver.Create (MySql.Data.MySqlClient.MySqlConnectionStringBuilder settings) (at <13314bc2115d4bd2a5d896df29fb7179>:0)

这是我的

Database.cs
文件:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using MySql.Data.MySqlClient;
using UnityEditor.Experimental.GraphView;

public class Database : MonoBehaviour
{
    private string server;
    private string database;
    private string user;
    private string password;
    private string port;

    public void Database_Initialize()
    {
        server = "IP-ADDRESS";
        port = "PORT";
        database = "DB_NAME";
        user = "USERNAME";
        password = "PASSWORD";

        // Use interpolated strings to insert the values from variables
        string connectionString = $"Server={server};Port={port};Database={database};Uid={user};Pwd={password};";
        // Use "using" pattern to make sure everything is disposed
        using (var connection = new MySqlConnection(connectionString))
        {
            connection.Open();

            string query = "INSERT INTO user (Username) VALUES ('User1')";
            using (MySqlCommand command = new(query, connection))
            {
                command.CommandTimeout = 60;
                // Use ExecuteNonQuery to execute the INSERT.
                // recordsChanged should be 1 afterwards
                int recordsChanged = command.ExecuteNonQuery();
            }
        }
    }
}

当我在 www 上搜索答案时,我只会得到类似:“编辑

my.cnf
my.ini
文件”的内容,但我没有。 我在这个网站上下载了我的 Conenctor:https://dev.mysql.com/downloads/connector/net/ 并将 MySql.Data.dll 放在我的 Plugins 文件夹中。我尝试使用 .Net & Mono- 以及 Microsoft Windoes 安装。

两者都显示相同的错误。

有什么想法吗? 提前致谢!

c# unity3d mariadb heidisql
1个回答
0
投票

MySQL Connector/.NET 不支持 auth_gssapi_client 身份验证,它仅在连接到 MySQL Enterprise 服务器时提供对 kerberos 身份验证的支持。

你必须使用 mysqlconnector for ADO.net 它提供对 gssapi 身份验证的支持

© www.soinside.com 2019 - 2024. All rights reserved.