Docker 安装Mysql 配置 lower_case_table_names 不生效问题

Docker 安装Mysql 配置 lower_case_table_names 不生效问题,第1张

重启mysql

show global variables like '%lower_case%';

没有生效! 且查了很多文章都是来回拷贝,无有用信息

将参数配置在docker run 中有效

注意/说明

1对于已经在运行的mysql docker,没有办法, 备份数据库 再docker run 一个

2lower_case_table_names 在 docker run 参数中变成了:lower-case-table-names

3可能类似的参数都需要这种方式才能成功

4本次问题主要是为了运行开源代码,并不是推荐使用mysql 的"忽略大小写"

1、docker search oracle[搜索docker云平台上的oracle的镜像]

2、docker pull registrycn-hangzhoualiyuncscom/qida/oracle-xe-11g拉取

3、docker images

4、docker run -d -p 49160:22 -p 49161:1521 -e ORACLE_ALLOW_REMOTE=true --name oracle -v /dockerOracleData:/dockerOracleData  registrycn-hangzhoualiyuncscom/qida/oracle-xe-11g

5、docker ps

6、docker s

7、sqlplus / as sysdba

PS:docker容器常用命令

docker search xxx:搜索docker云平台相关的镜像

docker pull xxx:根据名称拉取docker云平台镜像

docker images:列出本地镜像 

    -a:列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层)

    -digests:显示镜像的摘要信息

    -f:显示满足条件的镜像

    --format:指定返回值的模板文件

    --no-trunc:显示完整的镜像信息

    -q:只显示镜像ID

docker ps:列出容器

    -a:显示所有的容器,包括未运行的

    -f:根据条件过滤显示的内容

    --format:指定返回值的模板文件

    -l:显示最近创建的容器

    -n:列出最近创建的n个容器

    --no-trunc:不截断输出

    -q:静默模式,只显示容器编号

    -s:显示总的文件大小

docker start  :启动一个或多个已经被停止的容器

docker stop  :停止一个运行中的容器

docker restart  :重启容器

docker rm : 删除一个或多个容器。

    -f:通过 SIGKILL 信号强制删除一个运行中的容器

    -l:移除容器间的网络连接,而非容器本身

    -v:删除与容器关联的卷

“dockermysql没有mysqlbinlog”这个问题可以从以下几个角度来解答:

1 从Docker镜像的角度来看,有些Docker镜像可能不包含mysqlbinlog这个工具。这种情况可能是因为Docker镜像的制作者认为mysqlbinlog不是常用的工具,或者为了减少镜像的大小而去掉了mysqlbinlog。这种解答方式比较直接,基于Docker镜像的内容得出的结论也比较可信。

2 从MySQL版本的角度来看,有些MySQL版本可能不支持mysqlbinlog这个工具。这种情况可能是因为MySQL版本过旧,或者因为一些安全和稳定性的考虑而去掉了mysqlbinlog。这种解答方式需要结合具体的MySQL版本进行判断。

3 从容器启动参数的角度来看,有些容器启动参数可能没有开启mysqlbinlog这个选项。这种情况可能是用户在启动容器时没有加上mysqlbinlog选项,或者是Dockerfile中没有设置mysqlbinlog这个选项。这种解答方式需要结合具体的启动参数和Dockerfile文件进行判断。

4 从容器网络的角度来看,有些容器可能无法连接到宿主机器上的mysqlbinlog服务。这种情况可能是因为容器的网络配置不正确,或者是宿主机器上的mysqlbinlog服务没有正确地暴露出来。这种解答方式需要结合具体的网络配置和服务部署进行判断。

综上所述,“dockermysql没有mysqlbinlog”这个问题可以从Docker镜像的角度、MySQL版本的角度、容器启动参数的角度和容器网络的角度来解答。不同的解答方式可能会得出不同的结果,需要根据具体情况进行判断。

1docker images 列出本地主机上的镜像。

2docker pull 从Docker Hub中拉取或者更新指定镜像。

3docker run

-d 标识是让 docker 容器在后台运行。

-p 标识通知 Docker 将容器内部使用的网络端口映射到我们使用的主机上。

--name 定义一个容器的名字,如果在执行docker run时没有指定Name,那么deamon会自动生成一个随机数字符串当做UUID。

-e 设置环境变量,或者覆盖已存在的环境变量。

例如:docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSW

version: "33"

services:

web:

build:

ports:

- "4242:4242"

environment:

DATABASE_URL: postgres://postgres:unleash@db/postgres

depends_on:

- db

command: >

sh -c "

while ! nc -z db 5432; do

echo 'Postgres is unavailable'

sleep 1

done

npm run start"

db:

expose:

- "5432"

image: postgres:10-alpine

管理员不要再推荐了

我没招你惹你

点击windows的开始按钮,运行mysqlwork

1

mysqlworkbench加载中

2

mysqlworkbench加载完毕

3

点击顶部彩带《Database》-《Manage Co

以上就是关于Docker 安装Mysql 配置 lower_case_table_names 不生效问题全部的内容,包括:Docker 安装Mysql 配置 lower_case_table_names 不生效问题、docker容器安装oracle数据库、dockermysql没有mysqlbinlog等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10626397.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存