【发布时间】:2022-01-23 20:50:15
【问题描述】:
我一直在努力解决如何解决此错误。
我有一个 Springboot 和 MySQL 项目,我正在尝试 dockerize,我的 MySQL 容器启动正常,使用 docker container logs mysql-standalone 检查日志时,我没有收到错误。 p>
问题是当我尝试 docker container logs springboot-docker (My springboot image) 时,我收到此错误:
java.sql.SQLSyntaxErrorException: Access denied for user 'demo'@'%' to database 'docker_demo'
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) ~[mysql-connector-java-8.0.27.jar!/:8.0.27]
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) ~[mysql-connector-java-8.0.27.jar!/:8.0.27]
at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:828) ~[mysql-connector-java-8.0.27.jar!/:8.0.27]
at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:448) ~[mysql-connector-java-8.0.27.jar!/:8.0.27]
at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:241) ~[mysql-connector-java-8.0.27.jar!/:8.0.27]
at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198) ~[mysql-connector-java-8.0.27.jar!/:8.0.27]
at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:138) ~[HikariCP-4.0.3.jar!/:na]
at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:364) ~[HikariCP-4.0.3.jar!/:na]
at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:206) ~[HikariCP-4.0.3.jar!/:na]
at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:476) ~[HikariCP-4.0.3.jar!/:na]
at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:561) ~[HikariCP-4.0.3.jar!/:na]
at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:115) ~[HikariCP-4.0.3.jar!/:na]
at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112) ~[HikariCP-4.0.3.jar!/:na]
我创建了一个 demo MySQL 实例,而不是使用 root 实例。
我尝试以 root 身份登录 MySQL shell 并授予对我的 demo MySQL 实例中所有数据库的访问权限,但我仍然遇到同样的错误。
GRANT ALL ON *.* TO 'demo'@'localhost';
Query OK, 0 rows affected (0.02 sec)
Dockerfile
1 FROM adoptopenjdk/openjdk11:alpine-jre
2 ADD target/docker-0.0.1-SNAPSHOT.jar springboot-mysql-docker.jar
3 EXPOSE 8089
4 ENTRYPOINT ["java","-jar","springboot-mysql-docker.jar"]
~
Docker 镜像
Docker ps -a
我有很多错误,但似乎已修复,看来这是我需要修复的最后一个问题才能最终能够在容器中运行我的项目。
【问题讨论】:
标签: java mysql spring-boot docker