机器和背景: OSX 10.5.8 32 位。MySQL 密码为 "" 即为空
目标:我正在尝试使用 Java 数据库连接器 (JDBC) 教程。我目前正处于这一步。
错误:使用我拥有 JDBC 教程的目录中的 shell,我进入sudo ant create-mysql-database
并收到以下错误:
构建文件:/Users/adam/Desktop/JDBCTutorial/build.xml
创建-mysql-数据库:
构建失败/Users/adam/Desktop/JDBCTutorial/build.xml:73:java.sql.SQLException:com.mysql.jdbc.SQLError.createSQLException 的用户'root'@'localhost'(使用密码:YES)的访问被拒绝(SQLError.java:1074) 在 com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4074) 在 com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4006) 在 com.mysql.jdbc.MysqlIO。 checkErrorPacket(MysqlIO.java:919) at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1694) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1244) at com.mysql.jdbc.ConnectionImpl .coreConnect(ConnectionImpl.java:2397) 在 com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2430) 在 com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2215) 在 com.mysql.jdbc。 ConnectionImpl.(ConnectionImpl.java:813) 在 com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:395) 在 com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:334) 在 org.apache.tools.ant.taskdefs.JDBCTask.getConnection (JDBCTask.java:370) 在 org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:942) 在 org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:614) 在org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) 在 sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 在 java.lang。 reflect.Method.invoke(Method.java:592) 在 org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 在 org.apache.tools.ant.Task.perform(Task.java: 348) 在 org.apache.tools.ant.Target.execute(Target.java:390) 在 org.apache.tools.ant.Target.performTasks(Target.java:411) 在 org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399) 在 org.apache.tools.ant.Project.executeTarget(Project. java:1368) 在 org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) 在 org.apache.tools.ant.Project.executeTargets(Project.java:1251) 在 org.apache.tools .ant.Main.runBuild(Main.java:809) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java :280) 在 org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache .tools.ant.Main.startAnt(Main.java:217) 在 org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) 在 org.apache.tools.ant.launch.Launcher.main (Launcher.java:109)executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1251) at org.apache.tools.ant.Main.runBuild(Main.java:809) at org.apache .tools.ant.Main.startAnt(Main.java:217) 在 org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) 在 org.apache.tools.ant.launch.Launcher.main (Launcher.java:109)
自我纠正努力:我尝试grant all on initdb.* to 'root'@'127.0.0.1' identified by ''
在命令末尾添加this。同样的错误。它似乎拒绝访问 ant 做事;也许如果我将使用密码选项关闭为否,它会起作用;我试着用谷歌搜索,但没有运气