alpine linux中docker mysql踩坑记录

2023-05-16

写在前头,本文只是记录这个坑,目前没有找到解决办法。
研究了一天了,也没有解决。

环境

我使用vmware安装了alpine linux,安装过程见:
《vmware安装alpine linux》
https://www.bilibili.com/video/BV1H3411H7W4/

然后我在alpine linux中安装了docker安装过程见:
《alpine linux中安装docker》
https://blog.csdn.net/lxyoucan/article/details/123884548

然后我又在docker中安装mysql 5.7安装过程见:
《RuoYi开发实战-搭建开发环境》
https://blog.csdn.net/lxyoucan/article/details/123764953

查了一下root是支持%的
在这里插入图片描述

现象

这样安装出来的mysql非常奇怪。使用mysql 命令行的客户端可以正常连接。但是使用jdbc连接就报错。

命令行mysql正常连接

在这里插入图片描述

jdbc方式连接失败

在这里插入图片描述
Java代码中的Jdbc连接也无法正常连接。

探索过程

这个让我非常的难以理解,我做了一系列的测试。基本把网上能试的方法都试过了。都无法解决。

以下方法我试过了,对我这问题无效。

  1. 注释bind-address="127.0.0.1" 或者修改成 bind-address=“0.0.0.0”
  2. 运行 java 并选择-Djava.net.preferIPv4Stack=true强制 java 使用IPv4而不是IPv6. 在 Linux 上,这也可以通过运行(或将其放入/etc/profile:
 export _JAVA_OPTIONS="-Djava.net.preferIPv4Stack=true"
  1. 内网端口穿透到外网测试依然是命令行mysql可以连接,jdbc无法连接。
  2. 关闭防火墙
  3. 连接字符串中加useSSL=true

奇怪的现象

  1. 我创建了三台alpine linux虚拟机,其中一台虚拟机(第1台)中的Mysql一切正常,另外两台相同的配置方法,就是无法Jdbc连接。
  2. 上面提到的第1台alpine虚拟机,3306端口的Mysql服务正常。但是在重新创建新的Mysql服务比如:3307就无法正常jdbc访问了。
  3. 把正常的3306端口停了,重新创建一个新的3306端口的mysql服务依然是不正常的。
  4. CentOS7中同样的方法在docker中安装mysql服务,一切正常。
  5. Ubuntu20.04中同样的方法在docker中安装的mysql服务,一切正常。
  6. macOS中docker安装mysql一切正常。

解决办法

暂时没有找到最终的原因,目前只能暂时放弃使用alpine Linux系统。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

alpine linux中docker mysql踩坑记录 的相关文章

  • 什么时候应该使用 C++ 而不是 SQL?

    我是一名 C 程序员 偶尔使用 MySQL 来处理数据库 但我的 SQL 知识相当有限 但我肯定愿意改变这一点 目前 我正在尝试仅使用 SQL 查询对数据库中的数据进行分析 但我准备放弃了 转而将数据导入到C 中 用C 代码进行分析 我和同
  • 配置tomat的server.xml文件并自动生成mod_jk.conf

    我在用apache 2 2 15 and tomcat6 6 0 24 on CentOS 6 4并希望使用 tomcat 服务器的功能 通过添加以下内容自动生成 mod jk conf 文件
  • 错误代码:1305。函数或过程不存在

    因此 我在 MySQL 中创建一个函数 然后尝试向用户授予使用该函数的权限 但我无法这样做 这就是我正在做的 DELIMITER USE rxhelp36 scbn DROP FUNCTION IF EXISTS businessDayDi
  • MySQL 错误 1172 - 结果包含多行

    在存储过程中运行查询时 我从 MySQL 收到此错误 错误代码 1172 结果包含多行 我理解错误 我正在做一个SELECT INTO var list 因此查询需要返回单行 当我使用LIMIT 1 or SELECT DISTINCT 错
  • MySQL中如何声明变量?

    如何在mysql中声明一个变量 以便我的第二个查询可以使用它 我想写一些类似的东西 SET start 1 SET finish 10 SELECT FROM places WHERE place BETWEEN start AND fin
  • 如何在 SEQUELIZE (nodeJS) 中创建触发器?

    我正在尝试使用sequelize 创建一个触发器 主要思想是创建一个实例CONFIG创建后USER USER MODEL module exports function sequelize DataTypes var User sequel
  • docker 构建失败,无法解析“archive.ubuntu.com”

    我无法使用以下 Dockerfile 构建映像 FROM ubuntu RUN apt get y update apt get y install nodejs npm ssh cache npm install when package
  • 无法访问通过 NodePort 暴露的 Kubernetes 服务

    我正在使用 minikube 在最新的 MacOS 上测试 kubernetes 这是我的相关 YAML 命名空间 yml apiVersion v1 kind Namespace metadata name micro labels na
  • MySQL/PDO::quote() 尽管使用 PDO::PARAM_INT 参数,但仍在整数周围加上引号

    无论我传递给什么值 数据类型对 它都会出现 pdo gt quote value type 它总是将其引用为字符串 echo pdo gt quote foo PDO PARAM STR foo as expected echo pdo g
  • MaxListenersExceededWarning:检测到可能的 EventEmitter 内存泄漏。添加了 11 条消息列表。使用emitter.setMaxListeners()来增加限制

    我知道这可能会标记为重复的解决方案 但堆栈溢出的解决方案对我不起作用 Problem node 5716 MaxListenersExceededWarning Possible EventEmitter memory leak detec
  • 删除行导致锁超时

    当我尝试从表中删除行时 我不断收到这些错误 这里的特殊情况是我可能同时运行5个进程 该表本身是一个 Innodb 表 约有 450 万行 我的 WHERE 子句中使用的列没有索引 其他指数按预期运行 这是在事务中完成的 首先删除记录 然后插
  • 无法在docker容器中安装npm?

    我正在数字海洋服务器的 Docker 平台上部署一个简单的 Node js 应用程序 包 json name docker centos hello private true version 0 0 1 description Node j
  • posts_search 中的自定义查询

    如何使用此查询作为我的自定义搜索查询 add filter posts search my search is perfect 20 2 function my search is perfect search wp query sWord
  • mysql自动存储记录创建时间戳

    mysql 有什么方法可以在创建记录时自动将时间戳存储在记录行中 我试图使用时间戳 数据类型 和 current timestamp 作为默认值 但后来意识到每次更新记录时都会更新 我只需要一些可以存储创建时间戳的东西 Thanks Set
  • 学说迁移后备

    我们正在使用原则迁移 当迁移包含多个操作并且其中一个操作失败时 通常会出现问题 例如 如果迁移添加了 5 个外键 其中第 5 个失败 而字段长度不同 则修复字段错误并重新生成迁移不会not修复整个问题 而现在出现一个与 4 个密钥已存在有关
  • 检查已安装的软件包,如果没有找到则安装

    我需要检查已安装的软件包 如果未安装则安装它们 RHEL CentOS Fedora 示例 rpm qa grep glibc static glibc static 2 12 1 80 el6 3 5 i686 如何在 BASH 中进行检
  • 通过触发器应用表的列权限

    现在 我有一个名为 Members 的表 其中包含内容 分为联系人数据 银行数据 现在 管理员应该能够创建 更新 删除用户 这些用户保存在另一个表中 该表只能访问管理员 用户应该获得自己的 mysql 用户帐户 管理员还应该能够设置权限 例
  • mysql排序和排名语句

    我需要一些 mysql 语句的帮助 我的表 1 有 7 列 表 2 有 8 列 额外的列名为排名 我的语句应该是这样的 从表 1 中选择全部 然后按 用户数 排序 将其插入表 2 中并排名开始 1 2 3 等 table 1 usernam
  • MySQL 转储未知选项“-no-beep”

    在旧服务器上我使用了mysql转储命令来备份 MySQL 数据库 在新服务器上 MySQL 版本为 5 6 相同的命令给出了错误 unknown option no beep 无论它插入什么 我也在互联网上搜索过 但找不到任何帮助 在 my
  • docker-compose 将镜像推送到 aws ecr

    是否可以让 docker compose 构建镜像并将其推送到远程存储库 现在我做的是 docker compose 然后我做 docker compose config services 循环遍历名称重建图像名称和标签 然后执行 dock

随机推荐

  • MAME打开ROM报错解决办法

    问 olds100 34 西游释厄传 特别版 版本 100 第 1 套 34 运行报错如何解决 xff1f 答 经过我的研究olds100 zip这个游戏是一个特别版本 它依赖两个文件才可以正常运行 分别是 xff1a olds zip x
  • 【新建Spring Boot项目】Connect to 127.0.0.1:1087 [/127.0.0.1] failed: Connection refused

    背景 我在新建微服务项目的时候 xff0c 使用gradle报错Connect to 127 0 0 1 1087 127 0 0 1 failed Connection refused 然后我检查了一下IDEA的代理设置 xff0c 没有
  • 命令行搜索神器fzf

    文件搜索神器fzf xff0c 名气很大 xff0c 很快 xff0c 很强大 fzf 是一个通用的命令行模糊查找器 它是一个交互式 Unix 命令行过滤器 xff0c 可用于任何列表 xff1b 文件 命令历史 进程 主机名 书签 git
  • docker中搭建nacos集群笔记

    最近在学习nacos xff0c 在本地搭建nacos集群环境 因为电脑配置低 xff0c 所以没有使用vmware虚拟机 xff0c 而是用docker中搭建的 仅是简单的笔记供自己复习查看 nacos相关配置 数据源配置 vim con
  • nginx: [emerg] could not build server_names_hash

    报错信息 nginx emerg could not build server names hash you should increase server names hash bucket size 32 nginx configurat
  • Netty核心源码分析(二),Netty的Server端接收请求过程源码分析

    文章目录 系列文章目录一 连接请求接受过程源码分析1 事件的值2 processSelectedKeys获取事件 xff08 1 xff09 doReadMessages方法 xff08 2 xff09 pipeline的fireChann
  • HAProxy学习笔记

    最近在学习微服务架构 xff0c 里面有用到HAProxy xff0c 记录一下学习笔记 官方网站是 xff1a https www haproxy org 下载安装 推荐使用源码安装 xff0c 因为我用的ubuntu 20 04中本身自
  • 如果在ubuntu上安装mysql client

    ubuntu安装mysql客户端 MySQL 是流行的开源关系数据库管理系统 与服务器交互的程序称为 MySQL 客户端 您可以使用的最基本的客户端是命令行工具 xff0c 通常称为 MySQL 客户端 要在 Ubuntu 20 04 上安
  • neovim内置lsp实现Java语言补全

    文章目录 通用方式自动化配置Java LSP手动配置JDK版本选择配置解压jdt language server配置环境变量 我的配置分享 neovim使用nvim jdtls搭建Java IDE 通用方式自动化配置Java LSP 可以使
  • neovim使用nvim-jdtls搭建Java IDE

    nvim jdtls简介 Neovim for eclipse jdt ls 中内置 LSP 支持的扩展 Neovim gt 61 0 6 0 中对eclipse jdt ls的内置语言服务器协议支持的扩展 该项目遵循KISS 原则 xff
  • 【视频】零基础neovim搭建Java IDE

    文章目录 视频教程系统环境准备工作文件下载安装neovim 0 6以上版本 下载解压jdt language server安装JDK11安装curl git neovim配置插件安装配置nvim cmp配置LuaSnip配置nvim jdt
  • React Native Webview安全问题解决办法

    威胁描述 威胁描述 根据CVE披露的WebView远程代码执行漏洞信息 xff08 CVE 2012 663 CVE 2014 7224 xff09 xff0c Android系统中存在一共三个有远程代码执行漏洞的隐藏接口 分别是位于and
  • Linux sed命令使用笔记

    sed 通常用于过滤文本 xff0c 即它接受文本输入 xff0c 对其执行一些操作 xff08 或一组操作 xff09 xff0c 然后输出修改后的文本 sed 通常用于使用模式匹配或替换文件中多次出现的字符串来提取文件的一部分 Linu
  • vim代码运行插件vim-quickrun

    插件安装 这里以packer为例 packer插件管理器安装方法 修改 config nvim lua plugins lua文件 xff0c 并增加如下内容 xff1a span class token comment 彩虹括号 span
  • 【视频】RuoYi开发实战-搭建开发环境

    文章目录 简介B站视频特点RuoYi VueRuoYi环境准备JDK安装dockermysql安装redis 6 2安装 下载源码数据库初始化Redis配置数据源配置Logback报错解决测试后端是否启动成功前端运行 简介 RuoYi 使用
  • macOS 安装mysql client命令行工具

    下载MySQL Workbench MySQL Community Downloads https dev mysql com downloads workbench 安装 设置环境变量 编辑 zshrc 增加以下内容 xff1a span
  • Netty核心源码分析(三)业务请求执行关键——ChannelPipeline、ChannelHandler、ChannelHandlerContext源码分析

    文章目录 系列文章目录一 ChannelPipeline ChannelHandler ChannelHandlerContext1 三者关系 二 ChannelPipeline源码分析1 ChannelPipeline接口设计2 Chan
  • alpine linux中安装docker

    简介 Small Simple Secure Alpine Linux is a security oriented lightweight Linux distribution based on musl libc and busybox
  • 命令行mysql 中文乱码解决

    现象 在IDEA中查询 xff0c 中文显示正常 IDEA中的jdbc连接字符串是 xff1a jdbc mysql 172 16 184 13 3306 ry vue useUnicode span class token operato
  • alpine linux中docker mysql踩坑记录

    写在前头 xff0c 本文只是记录这个坑 xff0c 目前没有找到解决办法 研究了一天了 xff0c 也没有解决 环境 我使用vmware安装了alpine linux 安装过程见 xff1a vmware安装alpine linux ht