Ubuntu - Połączenie z MySQL

Odpowiedz Nowy wątek
2018-08-18 20:54
0

Siemka, próbuje połączyć swoją aplikacje z mysql-server na ubuntu.
Niestety dostaje takiego errora podczas odpalania:


Caused by: java.sql.SQLException: Access denied for user 'root'@'localhost'
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:965) ~[mysql-connector-java-5.1.46.jar:5.1.46]
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3976) ~[mysql-connector-java-5.1.46.jar:5.1.46]
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3912) ~[mysql-connector-java-5.1.46.jar:5.1.46]
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:871) ~[mysql-connector-java-5.1.46.jar:5.1.46]
        at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1714) ~[mysql-connector-java-5.1.46.jar:5.1.46]
        at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1224) ~[mysql-connector-java-5.1.46.jar:5.1.46]
        at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2190) ~[mysql-connector-java-5.1.46.jar:5.1.46]
        at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2221) ~[mysql-connector-java-5.1.46.jar:5.1.46]
        at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2016) ~[mysql-connector-java-5.1.46.jar:5.1.46]
        at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:776) ~[mysql-connector-java-5.1.46.jar:5.1.46]
        at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47) ~[mysql-connector-java-5.1.46.jar:5.1.46]
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.8.0_181]
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:1.8.0_181]
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0_181]
        at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[na:1.8.0_181]
        at com.mysql.jdbc.Util.handleNewInstance(Util.java:425) ~[mysql-connector-java-5.1.46.jar:5.1.46]
        at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:386) ~[mysql-connector-java-5.1.46.jar:5.1.46]
        at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:330) ~[mysql-connector-java-5.1.46.jar:5.1.46]
        at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:117) ~[HikariCP-2.7.9.jar:na]
        at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:123) ~[HikariCP-2.7.9.jar:na]
        at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:365) ~[HikariCP-2.7.9.jar:na]
        at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:194) ~[HikariCP-2.7.9.jar:na]
        at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:460) ~[HikariCP-2.7.9.jar:na]
        at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:534) ~[HikariCP-2.7.9.jar:na]
        at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:115) ~[HikariCP-2.7.9.jar:na]
        at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112) ~[HikariCP-2.7.9.jar:na]
        at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122) ~[hibernate-core-5.2.17.Final.jar:5.2.17.Final]
        at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcEnvironmentInitiator.java:180) ~[hibernate-core-5.2.17.Final.jar:5.2.17.Final]
        at org.hibernate.resource.transaction.backend.jdbc.internal.DdlTransactionIsolatorNonJtaImpl.getIsolatedConnection(DdlTransactionIsolatorNonJtaImpl.java:43) ~[hibernate-core-5.2.17.Final.jar:5.2.17.Final]
        ... 40 common frames omitted

Mój config yml do podpiecia bazy:

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/schema?autoReconnect=true&useSSL=false
    username: root
    password: root
    tomcat:
      test-while-idle: true
      validation-query: SELECT 1

Wcześniej już szukałem troche apropo tego błędu i zmieniłem dane logowania do mysql:

UPDATE mysql.user SET authentication_string=PASSWORD('root') WHERE User='root';

oraz nadałem wszelakie uprawnienia...

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'root' WITH GRANT OPTION;

Ktoś ma jakieś pomysły, albo wie jak rozwiązać problem? :/

edytowany 2x, ostatnio: placeg, 2018-08-18 20:57
maszyna stoi na vps, jesli to ma znaczenie - placeg 2018-08-18 21:05
Zalecam najpierw spróbować z MySQLowego klienta, czy te dane logowania działają, a potem dopiero używać apki. - TurkucPodjadek 2018-08-18 21:08
no działają, wpisuje root root i trybi - placeg 2018-08-18 21:10

Pozostało 580 znaków

2018-08-18 21:31
0

Nie wiem czy przy definiowaniu url nie powinienem jakoś inaczej tego uwzględnić na VPS?
Nikt nigdy nie konfigurował mysql na vps? :P

Pozostało 580 znaków

2018-08-18 21:54
0
placeg napisał(a):

Nie wiem czy przy definiowaniu url nie powinienem jakoś inaczej tego uwzględnić na VPS?
Nikt nigdy nie konfigurował mysql na vps? :P

To podłącz się lokalnie do MySQLa jako root, daj use mysql i sprawdź uprawnienia: select Host,User,Password from user WHERE User = 'root';
Tylko wyniku tego polecenia nie wklejaj, dopóki nie zaanonimizujesz kolumny Password

Pozostało 580 znaków

2018-08-18 22:08
0
TurkucPodjadek napisał(a):
placeg napisał(a):

Nie wiem czy przy definiowaniu url nie powinienem jakoś inaczej tego uwzględnić na VPS?
Nikt nigdy nie konfigurował mysql na vps? :P

To podłącz się lokalnie do MySQLa jako root, daj use mysql i sprawdź uprawnienia: select Host,User,Password from user WHERE User = 'root';
Tylko wyniku tego polecenia nie wklejaj, dopóki nie zaanonimizujesz kolumny Password

Wynik:

+-----------+------+
| Host      | User |
+-----------+------+
| localhost | root |
+-----------+------+

czyli wychodziłoby że jest po prostu localhost... a tak czy siak mi wywala access deneid ;v

edytowany 2x, ostatnio: placeg, 2018-08-18 22:08
Możesz spróbować zrobić update i zmienić tymczasowo localhost na % i wtedy spróbować aplikacją - TurkucPodjadek 2018-08-18 22:10
Nic to w sumie nie dało, ale z ciekawości założyłem nowego usera, któremu dałem prawa etc. Wsadziłem go do configu .yml, po czym po odpaleniu odziowo znów wywaliło error że [email protected] denied, po czym aplikacja normalnie się uruchomiła, ale tj. bez podpięcia z bazą bo nie utworzyła żadnych tabel (a powinna). - placeg 2018-08-18 22:30

Pozostało 580 znaków

2018-08-18 22:43
0

Problem solved.. Zmieniłem config z pliku yamla na application.properties i wszystko chodzi

F U yaml

Pozostało 580 znaków

2018-08-19 22:45
0

W yamlu stringi powinny być z cudzysłowami, a już na pewno takie w których jest dwukropek :)


Przeważnie ignoruję niezarejestrowanych użytkowników.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0