Java.SQL.SQLException: Zugriff verweigert für Benutzer Root@Localhost
Dieses Tutorial zeigt, wie Sie den Fehler java.sql.SQLException: Access denied for user 'root'@'localhost'
in Java lösen.
Fix java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)
in Java
Dieser Fehler tritt auf, wenn wir versuchen, eine neue oder frühere Version von MySQL zu deinstallieren und zu installieren. Der Fehler tritt auf, weil bei der Deinstallation von MySQL der MySQL-Deinstallationsassistent
nicht die vollständige Bereinigung durchführt.
Durch manuelles Reinigen des verbleibenden Mülls wird dieses Problem gelöst. Der Fehler, der auftritt, ist unten.
Befolgen Sie einige einfache Schritte, um diesen Fehler zu beheben.
-
Deinstallieren Sie zuerst den MySQL-Server mit
Uninstall Wizard
. -
Der Installationsordner ist noch vorhanden; alles aus dem Ordner löschen. Der Ordner lautet beispielsweise:
C:\Program Files (x86)\MySQL
-
Installieren Sie nun den MySQL-Server neu.
Der obige Vorgang löscht alle zuvor gespeicherten Passwörter und andere Informationen, die diesen Fehler verursachen.
Es gibt auch einige andere Gründe für diesen Fehler. Wenn Sie beispielsweise eine neue Datenbank mit Java und MySQL von Grund auf neu erstellen, kann derselbe Fehler auftreten.
Siehe Beispiel:
package delftstack;
import java.io.File;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class Example {
public static void main(String[] args) throws ClassNotFoundException, SQLException {
try {
Connection Database_Connection = (Connection) DriverManager.getConnection(
"jdbc:mysql://localhost/?user=root&password=rootpassword");
Statement Demo_Statement = (Statement) Database_Connection.createStatement();
int result = Demo_Statement.executeUpdate("CREATE New Database");
}
catch (Exception e) {
e.printStackTrace();
}
}
}
Der obige Code löst denselben Fehler aus, und der Grund, warum er den Fehler auslöst, ist, dass wir die neue Datenbank nicht richtig erstellen. Die Lösung für den obigen Code ist unten angegeben.
package delftstack;
import com.mysql.jdbc.PreparedStatement;
import java.io.File;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class Example {
public static void main(String[] args) throws ClassNotFoundException, SQLException {
try {
Connection Database_Connection =
DriverManager.getConnection("jdbc:mysql://localhost/?user=root&password=rootpassword");
PreparedStatement Demo_Statement =
(PreparedStatement) Database_Connection.prepareStatement("CREATE DATABASE databasename");
int result = Demo_Statement.executeUpdate("CREATE New Database");
}
catch (Exception e) {
e.printStackTrace();
}
}
}
Dieser Code erstellt erfolgreich eine neue Datenbank ohne Fehler.
Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.
LinkedIn FacebookVerwandter Artikel - Java Exception
- Ausnahme bei ungültiger Eingabe in Java
- Ausnahme im Hauptthread Java.Util.NoSuchElementException: Keine Zeile gefunden
- Ausnahme im Thread AWT-EventQueue-0 java.lang.NullPointerException
- Beheben Sie die Java.Net.BindException: Adresse wird bereits verwendet: Bind
- Der Java-Gateway-Prozess wurde beendet, bevor seine Portnummer gesendet wurde
- Java Throwable vs. Ausnahmeklasse