Uwierzytelnianie za pomocą starego hasła nie jest już obsługiwane, użyj haseł w stylu 4.1

Mam swoją stronę z hostgatorem i chcę uzyskać dostęp do bazy danych mysql za pomocą aplikacji Windows C #, ale gdy próbowałem się połączyć, otrzymałem tę wiadomość:

„Uwierzytelnianie za pomocą starego hasła nie jest już obsługiwane, użyj hasła stylu 4.1”

Próbowałem danego rozwiązania:

SET SESSION old_passwords=0;
SET PASSWORD FOR user@host=PASSWORD('your pw here');

pierwsze zapytanie zostało wykonane pomyślnie, ale wystąpił błąd „Odmowa dostępu dla użytkownika @ hosta” podczas wykonywania drugiego zapytania. Nie mogę zrozumieć, dlaczego jest ten problem. Używam połączenia MySQL-net 6.6.5.

Udało mi się połączyć moją bazę danych z MySql Workbench 5.2.47.

Czy ktoś może mi pomóc, co mogę zrobić więcej?

Skontaktowałem się z moim serwisem hostingowym i wprowadzili zmiany w pliku my.cnf, aby użyć hasła stylu 4.1. i jestem w stanie połączyć się z mysql

mysql -u <username> -p <password> -h <hostname>;

ale kiedy próbowałem połączyć się z C # z łącznikiem mySQL net 6.6.5 ponownie otrzymałem ten błąd.

Korzystam z programu Visual Studio 2012 ze złączem MySQL 6.6.5 w systemie Windows 8 64-bit. to jest kod, którego użyłem do połączenia

using MySQL.Data.MySQLClient;

private void button1_Click(object sender, EventArgs e)
            {
                string connStr = String.Format("server={0};port={1};uid={2};password={3};database={4}",
                    txtserver.Text, txtPort.Text, txtUser.Text, txtPassword.Text, txtDatabase.Text);
                conn = new MySqlConnection(connStr);
                try
                {
                    conn.Open();
                    MessageBox.Show("Test Connection Succeded");
                }
                catch (MySqlException ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }

Nie mogę zrozumieć, gdzie jest problem. Proszę pomóż mi

questionAnswers(9)

yourAnswerToTheQuestion