Estou tentando conectar o Eclipse ao banco de dados e não vai de jeito nenhum. Segui diversos tutoriais na internet pra tentar descobrir como solucionar o problema e nada.
Vale dizer que o link do driver do mysql precisou ser outro, por que o do curso dava problema . Estou usando o mysql-connector-java_8.0.23-1ubuntu20.04_all.
Cheguei a deixar o segundo "root" so como "root" mesmo, e também como a senha que uso no terminal do Mysql. Meu codigo:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class TestaConexao {
public static void main(String[] args) throws SQLException {
Connection connection = DriverManager
.getConnection("jdbc:mysql://localhost/loja_virtual?useTimezone=true&serverTimezone=UTC", "root", "sasajojo");
System.out.println("Fechando conexão!!!");
connection.close();
}
}
Mensagem do terminal
Exception in thread "main" java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:833)
at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:453)
at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246)
at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198)
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:677)
at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228)
at TestaConexao.main(TestaConexao.java:9)
Seguem as coisas que ja tentei pra ver se algo funcionava
Tentativa 1 - redefinindo várias vezes a senha e o bind-address ( sem alterar o bind-adress nada muda tbm)
sudo mysql_secure_installation
Edite mysqld.cnf e mude bind-address para 0.0.0.0 com o comando:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
sudo service mysql restart
sudo mysql -u root
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY *sasajojo';
Tentativa 2 - purge que consegui aqui no forum
sudo apt-get --purge remove mysql-server mysql-common mysql-client
sudo apt-get install mysql-server mysql-common mysql-client
mysqladmin -u root password *sasajojo*
sudo /etc/init.d/mysql restart
mysql -u root -p
Tentativa 3 -
sudo mysql
SELECT user,authentication_string,plugin,host FROM mysql.user;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'sasajojo';
FLUSH PRIVILEGES;
SELECT user,authentication_string,plugin,host FROM mysql.user;
exit
também cheguei a diminuir as exigencias de senha: SET GLOBAL validate_password_policy=LOW;
Aceito toda ajuda possível =)