2017-07-07 189 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"; 
相关问题