docker部署xxl-job-admin出现数据库拒绝问题及解决方法

目录
  • docker部署xxl-job-admin出现数据库拒绝
  • 问题出现:
    • 1.拉取代码:
    • 2.docker部署mysql
    • 3.部署代码:
    • 4.问题出现logs(摘取部分错误):
    • 5.问题的解决思路:
    • 6.总结:
  • 扩展:docker 安装 xxl-job
    • 1、安装mysql
    • 2、安装xxl-job-admin
    • 3、浏览器登录

docker部署xxl-job-admin出现数据库拒绝

笔者能力有限,小白一枚,在遇到问题之后记录问题的解决方式为主要目的,欢迎各位探讨交流。

问题出现:

1.拉取代码:

docker pull xuxueli/xxl-job-admin:2.3.0

2.docker部署mysql

3.部署代码:

docker run -d --link mysql:tolinkmysql -e PARAMS="--spring.datasource.url=jdbc:mysql://tolinkmysql:33061/xxl_job?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai --spring.datasource.username=root --spring.datasource.password=root --spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver" -p 8180:8080 -v /tmp:/data/applogs --name xxl-job-admin xuxueli/xxl-job-admin:2.3.0

4.问题出现logs(摘取部分错误):

// com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure // Caused by: java.net.ConnectException: Connection refused (Connection refused) // The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.

百思不得其解的是明明已经用link链接了mysql,为什么还会报数据库连接异常。但可以确信是数据库连接出了问题

5.问题的解决思路:

查看mysql容器的内部ip替换即可正常启动

docker inspect 容器名 # 查看容器IP
docker run -d -e PARAMS="--spring.datasource.url=jdbc:mysql://172.17.0.1:33061/xxl_job?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai --spring.datasource.username=root --spring.datasource.password=root --spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver" -p 8180:8080 -v /tmp:/data/applogs --name xxl-job-admin xuxueli/xxl-job-admin:2.3.0

6.总结:

解决很简单,但曾无数遍怀疑是mysql权限的问题,网络连接时长等问题,许多bolg解决方式繁而杂,静下心才是正确的思维。

扩展:docker 安装 xxl-job

1、安装mysql

安装步骤:https://www.cnblogs.com/leihongnu/p/16258505.html

创建数据库并导入数据(xxl_job)

vimtables_xxl_job.sql

官网地址:https://github.com/xuxueli/xxl-job/blob/master/doc/db/tables_xxl_job.sql,不同版本的sql有些不一样,要注意

将文件上传到容器中,登录mysql,sourcetables_xxl_job.sql

#mysql -uroot -p
>sourcetables_xxl_job.sql

2、安装xxl-job-admin

下载镜像

#docker pull xuxueli/xxl-job-admin:2.3.1

启动容器

#docker run -e PARAMS="--spring.datasource.url=jdbc:mysql://192.168.59.103:3306/xxl_job?Unicode=true&characterEncoding=UTF-8 --spring.datasource.username=root --spring.datasource.password=root" -p 8080:8080 -v /tmp:/data/applogs --name xxl-job-admin --privileged=true -d xuxueli/xxl-job-admin:2.3.1

3、浏览器登录

地址:http://192.168.59.103:8080/xxl-job-admin

账号/密码:admin/123456

到此这篇关于docker部署xxl-job-admin出现数据库拒绝问题的文章就介绍到这了,更多相关docker部署xxl-job-admin数据库拒绝内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Docker部署Laravel应用实现队列&任务调度

    上一篇我们写了如何用 Docker 部署 Laravel 应用,然后这一篇我们写一下如何部署含有队列以及任务调度的 Laravel 应用. 一. 我们首先准备一下我们的 docker/app.cron 文件 注意一下,文件最后的空行是必须的. #!/usr/bin/env bash PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin * * * * * cd /var/www/html && php artis

  • ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法

    本文实例讲述了ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法.分享给大家供大家参考.具体方法如下: 这种情况是在 magic_quotes_gpc 开启的情况下发生的.原因是thinkphp在入库的时候没有判断 magic_quotes_gpc 是否开启,不管三七二十一地进行了转义处理. 解决办法是在入口文件增加如下代码则可: 复制代码 代码如下: if (!get_magic_quotes_gpc()) {      function addslashes_deep($valu

  • django数据库migrate失败的解决方法解析

    Django是一个MVC架构的web框架,其中,数据库就是"Module".使用这种框架,我们不必写一条SQL语句,就可以完成对数据库的所有操作.在之前的Django版本中,我们像操作本地对象那样操作数据对象,在更改保存之后,执行python manage.py syncdb命令来同步数据库,在我使用的1.9.2版本中,需要依次执行一下步骤: python manage.py makemigrations (这个命令会根据你对数据库做出的更改生成操作数据库的python脚本) pyth

  • IDEA无法连接mysql数据库的6种解决方法大全

    本文主要介绍了IDEA无法连接mysql数据库的6种解决方法大全,分享给大家,具体如下: 1.本地的mysql没有创建该数据库(笔者就是这个原因!) 查看数据库发现没有,重建就可以了 测试成功! 网上说法: 2.IP地址不对 https://www.jb51.net/article/200432.htm 3.mysql版本过高 https://bbs.csdn.net/topics/392368070?page=1 4.创建的Java项目的路径里包含中文字符 https://www.jb51.n

  • IDEA连接mysql数据库报错的解决方法

    IDEA连接mysql数据库出现Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezone' property manually. 报错意思是服务器返回了无效时区.也就是我们的数据库返回了无效的时区. 如图所示: 报错中显示让我们去Advanced下的serverTimezone看看. 那我们就打开Advanced看看 可以看到这里显示的时域为空的,我们填入Asia/Shanghai 搞定.注意这里可

  • nodejs和C语言插入mysql数据库乱码问题的解决方法

    在这里记录了nodejs过程中的一些乱码情况,这里的乱码主要是由于网页的编码方式与nodejs的默认解码方式(utf8)不一致所造成的.这一次要说一下的是在C语言和nodejs与MySQL进行交互的时候出现的乱码问题. 1,由于爬虫程序在多个Docker中执行,因此我需要定期的同步每一个docker中的mysql数据到一个全局的mysql数据表中.使用nodejs进行数据同步,出现中文乱码.要知道在每一docker中的中文是不存在乱码的.原因是nodejs默认处理字符是utf8,而mysql默认

  • SQL附加数据库失败问题的解决方法

    为了偷个懒,利用这个数据库,但是在附加的时候出错了. 错误如下: 一开始还以为数据库位置存在问题,所以重新放置了一个位置,仍然无效.最后,上网寻找解决方法.所幸的是此类问题还真有人遇到了,而且也有好几种解决方法.我就用了两种方法,分享一下吧: 方法一: 将要附加的文件拷贝到 SQL Server默认的 Data 目录,此时附加就会成功:即自己所安装的路径下 方法二: 使用window登陆,不使用sql混合验证模式登陆,也可以将数据库附加上去. 这两种方法都可以实现,至于其他的方法,大家可以试试看

  • SQL数据库日志已满解决方法

    当前的解决方法是:把硬盘上的其他文件删除,以空出硬盘空间,将数据库的日志文件大小改成无限制,然后分离数据库,要确保分离成功,.然后把数据库日志文件删除(最好是先改名,以防万一).再附加数据库,这样会重建日志文件. 加回去之后,将数据库改成自动收缩,把日志文件改成按mb增长,增长最大设为一个固定的值,值的大小看数据处理情况,存在大指的update操作的话,应设为大一点. 在查询分析器上操作: 清空日志 DUMP TRANSACTION 库名 WITH NO_LOG 截断事务日志: BACKUP L

  • ubuntu22通过docker安装wechat启动后无界面的问题及解决方法

    首先说明:该种方法可能不适用与大部分,只是自己摸索出的一种可能. 问题描述:ubuntu22.04在通过docker安装好wechat后,通过拉取源进行安装的,同时我的Vscode也识别到安装了docker,于是也顺便安装了docker的插件,可以看到确实安装了betswu/wechat,但是在使用一段时间后,又发现执行命令"sudo docker start/stop docker"时,wechat正常启动,但是无打开界面,尝试了网上多种方法,均不能解决我的需求,于是便开始针对逐步暴

  • 使用Docker部署MySQL 5.7&8.0主从集群的方法步骤

    > 部署 MySQL 5.7 集群 master & slave (仅测试用) 镜像版本 5.7 1.创建 overlay 网络 docker network create --driver overlay common-network --attachable 2.编辑两个配置文件 master.cnf 与 slave.cnf !includedir /etc/mysql/conf.d/ !includedir /etc/mysql/mysql.conf.d/ [mysqld] log-b

  • 使用SQL Server 2008远程链接时SQL数据库不成功的解决方法

    远程连接SQL Server 2008,服务器端和客户端配置 关键设置: 第一步(SQL2005.SQL2008): 开始-->程序-->Microsoft SQL Server 2008(或2005)-->配置工具-->SQL Server 配置管理器-->SQL Server网络配置-->MSSQLSERVER(这个名称以具体实例名为准) 的协议-->TCP/IP-->右键-->启用 第二步: SQL2005: 开始-->程序-->Mi

随机推荐