Я пытаюсь настроить соединение с моим локальным db (mysql) через PyCharm. Я работаю над macbook pro.PyCharm - Подключение к базе данных. Доступ запрещен для пользователя «root» @ «localhost» (с использованием пароля: ДА)
Я использую это video.
Но, когда я пытаюсь проверить соединения, я получаю эту ошибку:
Connection to Data Source failed
java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1078)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4190)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4122)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:927)
at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1709)
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1252)
at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2486)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2519)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2304)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:834)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:416)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:346)
in RemoteDriverImpl.connect(RemoteDriverImpl.java:27)
at com.sun.proxy.$Proxy87.connect(Unknown Source)
in LocalDataSource.getConnection(LocalDataSource.java:158)
Но у меня нет никаких проблем подключения к MySQL через терминал
mysql -u root --password=123
UPD
mysql -u root -p -h 127.0.0.1 -D lp
Access denied for user 'root'@'localhost' (using password: YES)
mysql -u root -p -h 127.0.0.1 lp
Access denied for user 'root'@'localhost' (using password: YES)
mysql -u root -p -h localhost lp
connected
UPD
mysql> select host, user, password != '' from mysql.user;
+-----------+------+----------------+
| host | user | password != '' |
+-----------+------+----------------+
| localhost | root | 1 |
| 127.0.0.1 | root | 1 |
| ::1 | root | 1 |
+-----------+------+----------------+
3 rows in set (0.00 sec)
mysql> select user(), current_user();
+----------------+----------------+
| user() | current_user() |
+----------------+----------------+
| [email protected] | [email protected] |
+----------------+----------------+
1 row in set (0.00 sec)
Вот скриншот моих настроек:
Любые идеи?
Ваша конфигурация MySQL может запрещать TCP-соединения (только через сокеты .. или что-то там, где они есть в мире Linux) – LazyOne
Пожалуйста, проверьте из командной строки, если вы можете подключиться с помощью 'mysql -u root -password = 123 lp' – rsanchez
@LazyOne, если это так, я понимаю, он должен получить ошибку «Невозможно подключиться», а не «Доступ запрещен». – rsanchez