Я выполнил все действия по предоставлению прав для своего пользователя root и других пользователей.
Но все еще не работает.
и дело в
Доступ запрещен для пользователя 'root'@ 'localhost' (используя пароль: НЕТ)
все одинаковые, кроме имени пользователя.
Я использую Mac OS и затмеваю новый.
ивот мой код.
Я сделал грант для каждой учетной записи пользователя.
И я создал нового пользователя для новой попытки.
Я даже создал новую базу данных дляновый env.
package db_2019_2_1;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Select {
public static void main(String[] args) {
String driver = "org.mariadb.jdbc.Dirver";
Connection conn;
String url = "jdbc:mariadb://127.0.0.1:3306/exercise";
String user = "root";
String pw = "root password";
try {
Class.forName(driver);
}catch(ClassNotFoundException e) {
System.out.println("failed");
e.printStackTrace();
}
try {
conn = DriverManager.getConnection(url, user, pw);
if(conn != null) {
System.out.println("done");
}
}catch(SQLException e){
System.out.println("failed db");
e.printStackTrace();
}
}
}
не удалось
java.lang.ClassNotFoundException: org.mariadb.jdbc.Dirver
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at db_2019_2_1.Select.main(Select.java:15)
java.sql.SQLInvalidAuthorizationSpecException: доступ запрещен дляпользователь 'root' @ 'localhost' (используя пароль: НЕТ)
ошибка db
at org.mariadb.jdbc.internal.util.exceptions.ExceptionMapper.get(ExceptionMapper.java:238)
at org.mariadb.jdbc.internal.util.exceptions.ExceptionMapper.getException(ExceptionMapper.java:171)
at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.connectWithoutProxy(AbstractConnectProtocol.java:1132)
at org.mariadb.jdbc.internal.util.Utils.retrieveProxy(Utils.java:620)
at org.mariadb.jdbc.MariaDbConnection.newConnection(MariaDbConnection.java:175)
at org.mariadb.jdbc.Driver.connect(Driver.java:92)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at db_2019_2_1.Select.main(Select.java:21)
Причина: java.sql.SQLException: доступ запрещен для пользователя 'root' @ 'localhost'(используя пароль: НЕТ)
Текущая кодировка UTF-8. Если пароль был установлен с использованием другой кодировки, рассмотрите возможность использования опции 'passwordCharacterEncoding'
at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.authentication(AbstractConnectProtocol.java:852)
at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.handleConnectionPhases(AbstractConnectProtocol.java:757)
at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.connect(AbstractConnectProtocol.java:415)
at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.connectWithoutProxy(AbstractConnectProtocol.java:1128)
... 6 more