2017-07-07 184 views
1

我搜索了類似的問題尋找解決我的問題的方法,因爲很多人遇到同樣的問題我。但是,沒有任何解決方案能夠提供幫助,而且我仍然有相同的錯誤堆棧。java.sql.SQLException:訪問拒絕用戶'wineship'@'localhost'(使用密碼:YES)

這是我的java代碼,開始連接。堆棧清楚地指出這行康恩=的DriverManager.getConnection(...);:

package com.wine.plugins.managers.models; 

import java.sql.Connection; 
import java.sql.DriverManager; 
import java.sql.SQLException; 

public abstract class DatabaseModel 
{ 
    protected static Connection conn = null; 

    private static final String url = "jdbc:mysql://localhost/wineships?useSSL=false"; 
    private static final String username = "wineship"; 
    private static final String password = "password"; 

    public DatabaseModel() 
    { 
     try { 
      if(conn == null) 
      { 
       Class.forName("com.mysql.jdbc.Driver").newInstance(); 
       conn = DriverManager.getConnection(url, username, password); 
       if (conn != null) { 
        System.out.println("Connected to the database"); 
       } 
      } 
     } catch (SQLException e) { 
      e.printStackTrace(); 
      System.exit(0); 
     } catch (InstantiationException e) { 
      e.printStackTrace(); 
      System.exit(0); 
     } catch (IllegalAccessException e) { 
      e.printStackTrace(); 
      System.exit(0); 
     } catch (ClassNotFoundException e) { 
      e.printStackTrace(); 
      System.exit(0); 
     } 
    } 
} 

這是堆棧:

[08:24:25 WARN]: java.sql.SQLException: Access denied for user 'wineship'@'localhost' (using password: YES) 
[08:24:25 WARN]: at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:964) 
[08:24:25 WARN]:  at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3973) 
[08:24:25 WARN]:  at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3909) 
[08:24:25 WARN]:  at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:873) 
[08:24:25 WARN]:  at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1710) 
[08:24:25 WARN]:  at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1226) 
[08:24:25 WARN]:  at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2194) 
[08:24:25 WARN]:  at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2225) 
[08:24:25 WARN]:  at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2024) 
[08:24:25 WARN]:  at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:779) 
[08:24:25 WARN]:  at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47) 
[08:24:25 WARN]:  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
[08:24:25 WARN]:  at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) 
[08:24:25 WARN]:  at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 
[08:24:25 WARN]:  at java.lang.reflect.Constructor.newInstance(Constructor.java:423) 
[08:24:25 WARN]:  at com.mysql.jdbc.Util.handleNewInstance(Util.java:425) 
[08:24:25 WARN]:  at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:389) 
[08:24:25 WARN]:  at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:330) 
[08:24:25 WARN]:  at java.sql.DriverManager.getConnection(DriverManager.java:664) 
[08:24:25 WARN]:  at java.sql.DriverManager.getConnection(DriverManager.java:247) 
[08:24:25 WARN]:  at com.wine.plugins.managers.models.DatabaseModel.<init>(DatabaseModel.java:21) 
[08:24:25 WARN]:  at com.wine.plugins.managers.models.ValidBlocksDatabaseModel.<init>(ValidBlocksDatabaseModel.java:10) 
[08:24:25 WARN]:  at com.wine.plugins.managers.BlockValidityManager.initialize(BlockValidityManager.java:16) 
[08:24:25 WARN]:  at com.wine.plugins.WineShips.onEnable(WineShips.java:12) 
[08:24:25 WARN]:  at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:264) 
[08:24:25 WARN]:  at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:337) 
[08:24:25 WARN]:  at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:402) 
[08:24:25 WARN]:  at org.bukkit.craftbukkit.v1_12_R1.CraftServer.enablePlugin(CraftServer.java:377) 
[08:24:25 WARN]:  at org.bukkit.craftbukkit.v1_12_R1.CraftServer.enablePlugins(CraftServer.java:327) 
[08:24:25 WARN]:  at net.minecraft.server.v1_12_R1.MinecraftServer.t(MinecraftServer.java:421) 
[08:24:25 WARN]:  at net.minecraft.server.v1_12_R1.MinecraftServer.l(MinecraftServer.java:382) 
[08:24:25 WARN]:  at net.minecraft.server.v1_12_R1.MinecraftServer.a(MinecraftServer.java:337) 
[08:24:25 WARN]:  at net.minecraft.server.v1_12_R1.DedicatedServer.init(DedicatedServer.java:272) 
[08:24:25 WARN]:  at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:544) 
[08:24:25 WARN]:  at java.lang.Thread.run(Thread.java:748) 

MySQL服務器上的本地主機上運行:3306 Linux上的程序Xampp。該代碼適用於將從SQL服務器請求數據的Minecraft服務器。

+0

您是否嘗試過使用127.0.0.1呢? –

+2

確保你有一個用戶'wineship'@'localhost',它對你的數據庫有必要的權限。 – suguspnk

+0

也許你沒有將用戶稱爲'wineship'和密碼作爲'password'。用'root'作爲用戶,''「'(沒有密碼簡單地打開和關閉雙引號)作爲密碼。因爲如果尚未配置用戶名和密碼,這些是默認的用戶名和密碼。 – Shashanth

回答

1

我一直在修補phpmyadmin,我發現輸入地址而不是使用'%',解決了我的問題。我也改變了 「localhost」 的爲127.0.0.1 @nigel仁

我的代碼是現在:

private static final String url = "jdbc:mysql://127.0.0.1/wineships"; 
private static final String username = "wineship"; 
private static final String password = "password"; 
相關問題