2014-09-13 3 views
7

Jestem próbuję zainstalować i przetestować złącze MySQL ODBC na moim komputerze (Windows 7), aby połączyć się ze zdalnym serwerem MySQL DB, ale po skonfigurowaniu i przetestowaniu połączenia , wciąż otrzymuję następujący błąd:MySQL - połączenie ODBC nie powiedzie się, połączenie Workbench działa

Connection Failed 
[MySQL][ODBC 5.3(w) Driver]Access denied for user 'root'@'(my host)' (using password: YES): 

problem polega na tym, mogę połączyć się z MySQL Workbench (zdalnie - z mojego komputera lokalnego do zdalnego serwera) po prostu w porządku. Mam obszernie przeczytać this FAQ, ale to nie pomaga. Próbowałem:

  • Sprawdzanie, czy mysql działa na serwerze (to jest. Próbowałem jeszcze wiele razy go uruchamiać);
  • Sprawdzanie, czy port nasłuchuje połączenia na serwerze zdalnym. To jest.
  • Łączenie ze zdalnym serwerem przy użyciu środowiska MySQL Workbench. To działa.
  • Sprawdzanie, czy adres IP i porty zdalnej bazy danych są poprawne;
  • Sprawdzanie, czy użytkownik (root) i hasło są poprawne;
  • Ponowne wprowadzenie hasła w oknie konfiguracji ODBC;
  • Sprawdzanie i modyfikowanie zawartości pliku "my.conf" na serwerze zdalnym, aby umożliwić połączenia ze wszystkich stron (0.0.0.0);
  • W tym (mój host) na tabelach GRANT HOST z mySQL (próbowałem także użyć symbolu wieloznacznego "%", ale jest taki sam jak nic);
  • Uruchamianie URZĄDZEŃ FLUSH; I PRZYWILEJE FLUSH; polecenie na zdalnym serwerze mySQL, aby zresetować pamięć podręczną uprawnień;
  • Wyłączanie mojej zapory podczas konfigurowania sterownika ODBC;
  • Sprawdź, czy zmienna MySQL "skip_networking" jest WYŁĄCZONA, aby umożliwić połączenia zdalne.

Co jest frustrujące, to że mogę się połączyć ze środowiskiem MySQL Workbench na moim lokalnym komputerze (z tym samym adresem IP/użytkownikiem/hasłem), ale nie z ODBC.

Co mogę zrobić źle, lub co może zepsuć moją próbę połączenia się z ODBC?

Aktualizacja: Udało mi się ustawić sterownik ODBC i uruchomić go poprawnie po stronie serwera. Mogę połączyć się z localhost za pomocą wiersza poleceń (z poleceniem "isql"). Ale nadal nie mogę połączyć się zdalnie z moim komputerem z Windows 7.

+0

Czy hasło jest puste? –

+0

Nie, mam niepuste hasło. Próbowałem ponownie pisać go wiele razy, ale to nie działa.Mogę połączyć się z mojego komputera do serwera usuwania za pomocą złącza MySQL Workbench, używając tego samego hasła użytkownika. – user1183352

Odpowiedz

6

Rozwiązany.

Jak się okazało, był to problem uprawnień. Uruchomiłem następujące polecenie na serwerze zdalnym SQL:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'(my_host)' IDENTIFIED BY '(my_password)'; 

Uruchomiłem poprzednie polecenie, ale bez hasła "IDENTYFIKOWANE PRZEZ". Następnie, aby zresetować pamięć podręczną pozwoleń mysql, uruchomiłem także

FLUSH PRIVILEGES; 

A teraz działa.