Windos10上Podman安装运行mysql8

news2025/2/1 10:57:43

记录以下在windows10系统上Podman v5.1.1安装MySQL8全过程。

目录

  •  一、拉取mysql8镜像
  • 二、创建宿主目录
  • 三、创建 my.cnf文件
  • 四、创建Mysql8容器
  • 五、windows上Podman安装运行mysql8失败
  • 问题描述
  •  解决办法
  • ① 通过PowerShell进入wsl
  • ② 修改wsl系统配置
  • ③ 重启wsl,Podman
  • 六、记录错误日志

 一、拉取mysql8镜像

首先通过Podman下载Mysql8镜像到本地。命令如下:

podman pull mysql:8

二、创建宿主目录

在windows系统磁盘上创建挂在所需的目录,我是在 D:\Program Files\podman-conf\mysql8 目录下分别创建了conf 、data 、logs三个文件夹。

三、创建 my.cnf文件

conf目录下创建 my.cnf 文件,文件内容如下:

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
# basedir=/usr/local/mysql8
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql8/data
# 允许最大连接数
max_connections=1000
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=100
# 服务端使用的字符集默认为UTF8
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
authentication_policy=mysql_native_password
#是否对sql语句大小写敏感,1表示不敏感  需要在初始化时设置
# lower_case_table_names = 1
#MySQL连接闲置超过一定时间后(单位:秒)将会被强行关闭
#MySQL默认的wait_timeout  值为8个小时, interactive_timeout参数需要同时配置才能生效
interactive_timeout = 1800
wait_timeout = 1800
#Metadata Lock最大时长(秒), 一般用于控制 alter操作的最大时长sine mysql5.6
#执行 DML操作时除了增加innodb事务锁外还增加Metadata Lock,其他alter(DDL)session将阻塞
lock_wait_timeout = 3600
#内部内存临时表的最大值。
#比如大数据量的group by ,order by时可能用到临时表,
#超过了这个值将写入磁盘,系统IO压力增大
tmp_table_size = 64M
max_heap_table_size = 64M
# MySQL服务端字符集
character_set_server = utf8mb4
# 设置默认存储引擎为InnoDB
default-storage-engine = InnoDB
# 默认为ON,设置为OFF,关闭事务自动提交
autocommit = OFF
transaction_isolation = READ-COMMITTED
# 错误日志存放路径
log_error = /usr/local/mysql8/log/log.err
# 全局动态变量,默认3,范围:1~3
# 表示错误日志记录的信息,1:只记录error信息;2:记录error和warnings信息;3:记录error、warnings和普通的notes信息
log_error_verbosity = 2

[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4

四、创建Mysql8容器

podman run -itd --name mysql8 -e TZ="Asia/Shanghai" -v "D:/Program Files/podman-conf/mysql8/conf/my.cnf":/etc/my.cnf -v "D:/Program Files/podman-conf/mysql8/data":/var/lib/mysql -v "D:/Program Files/podman-conf/mysql8/logs":/var/log/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8 --lower_case_table_names=1

正常到这一步就完成了MySQL的安装和运行。可以通过 podman ps 查看mysql 容器是否在运行。

以上是正确安装后的截图。

而我在安装时,出现了一个错误,困惑了我很久,具体问题如下。

五、windows上Podman安装运行mysql8失败

问题描述

上面第四步完成后,通过podman ps 命令查看运行的容器时,发现没有mysql,很奇怪呀。于是反复安装运行多次都是一样,后来查看了mysql日志发现了问题的根源在于,容器读取windows上的挂在文件目录时失败导致的。

 解决办法

① 通过PowerShell进入wsl

② 修改wsl系统配置

添加 /etc/wsl.conf 文件中的配置。输入命令:

sudo vi /etc/wsl.conf

如果没有以下内容直接添加进去即可:

[automount]
enabled = true
options = "metadata"
mountFsTab = false

添加后查看文件内容如下图示:

 

③ 重启wsl,Podman

 推出liunx系统后,停止 wsl ,重新启动podman。

wsl --shutdown

podman machine start

通过以上方式,重新安装mysql,运行mysql成功。 

六、记录错误日志

2024-06-11 13:42:33+08:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.27-1debian10 started.
2024-06-11 13:42:33+08:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
2024-06-11 13:42:33+08:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.27-1debian10 started.
2024-06-11 13:42:33+08:00 [Note] [Entrypoint]: Initializing database files
mysqld: [Warning] World-writable config file '/etc/my.cnf' is ignored.
2024-06-11T05:42:33.509612Z 0 [System] [MY-013169] [Server] /usr/sbin/mysqld (mysqld 8.0.27) initializing of server in progress as process 38
2024-06-11T05:42:33.518315Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2024-06-11T05:42:34.383870Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
mysqld: Cannot change permissions of the file 'ca.pem' (OS errno 1 - Operation not permitted)
2024-06-11T05:42:35.383035Z 0 [ERROR] [MY-010295] [Server] Could not set file permission for ca.pem
2024-06-11T05:42:35.383071Z 0 [ERROR] [MY-013236] [Server] The designated data directory /var/lib/mysql/ is unusable. You can remove all files that the server added to it.
2024-06-11T05:42:35.383257Z 0 [ERROR] [MY-010119] [Server] Aborting
2024-06-11T05:42:36.960729Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.27)  MySQL Community Server - GPL.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1815395.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CNC智能化的上下料解决方案

CNC加工行业因其高效、精密的加工能力在3C、汽车等行业中占据重要地位。然而,传统的CNC上下料方式繁琐且耗时,与CNC机床配套工序和设备的高度信息化、自动化水平形成鲜明对比。这种不匹配导致人工上下料成为生产线的瓶颈,不仅效率低下&#x…

算法导论实战(七)(山东大学软件学院算法历年考题+朋辈辅导)

🌈 个人主页:十二月的猫-CSDN博客 🔥 系列专栏: 🏀算法启示录 💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 目录 前言 第一周 题目一 题目二 题目三…

美创科技入选“2024网络安全提供商创新排行榜”

近日,DBC德本咨询公布了“2024网络安全提供商创新排行榜”,美创科技凭借近20年的数据安全创新耕耘,荣誉上榜。 此次,与360、华为、腾讯等互联网、网络安全头部厂商并肩上榜,是行业对美创的再次认可。 数据安全的发展离…

加密好的WPSword文档,忘记密码怎么办?

在日常办公和学习中,我们经常使用WPS Word等文档处理软件来创建和编辑重要文件。为了保护这些文件不被未经授权的人访问,我们通常会选择给文档设置密码。然而,有时我们可能会因为时间久远或其他原因而忘记自己设置的密码,这时该如…

5分钟安装Kubernetes:+带你轻松安装istio服务网格指南

上次我跟大家简单介绍了一下Kubernetes的各个组件及其含义,本期本来计划带领大家一起学习一些常用命令,但我认为这种方式可能无法达到学习的效果。有可能你们会直接忘记,甚至可能没有兴趣去学。我也理解,心想这跟我有什么关系&…

首张地下地图!D-Wave 专用量子计算机助力沙特阿美完成地震成像

内容来源:量子前哨(ID:Qforepost) 文丨浪味仙 排版丨沛贤 深度好文:800字丨3分钟阅读 摘要:过去两年中,沙特阿美研究中心一直在使用总部在加拿大的D-Wave 公司的专用量子计算技术,…

直流遥控器 继电器8-10V应用 降压恒压SL3036电源芯片

在现代电子设备中,电源的稳定性和可靠性对于设备的正常运行至关重要。特别是在直流遥控器这类设备中,由于其需要长时间稳定运行且对电压稳定性要求较高,因此选择一款合适的电源芯片显得尤为重要。本文将重点介绍SL3036电源芯片在直流遥控器继…

MindMap:大模型结合知识图谱,提供透明的推理路径

MindMap:大模型结合知识图谱,提供透明的推理路径 提出背景1. 知识更新与整合2. 信息准确性与幻觉问题3. 推理透明度与解释性4. 处理复杂查询的能力5. 系统灵活性和扩展性 MindMap 基于邻居的证据探索 基于路径的证据探索 证据整合 推理与生成左侧部分…

实现一个vue js小算法 选择不同的时间段 不交叉

以上图片选择了时间段 现在需要判断 当前选择的时间段 不能够是 有交叉的所以现在需要循环判断 //判断时间段是否重叠交叉 export function areIntervalsNonOverlapping(intervals:any) {// 辅助函数:将时间字符串转换为从当天午夜开始计算的分钟数function conver…

海豚调度清理:使用 API 轻松清理历史工作流实例以及日志文件

💡 本系列文章是 DolphinScheduler 由浅入深的教程,涵盖搭建、二开迭代、核心原理解读、运维和管理等一系列内容。适用于想对 DolphinScheduler了解或想要加深理解的读者。 祝开卷有益。 大数据学习指南 大家好,我是小陶,DolphinS…

橡胶:神奇的天然材料

你是否知道,橡胶其实是一个充满神秘与奇妙的世界? 从原始的乳胶,到现代工业中的合成橡胶,它的变化与运用令人叹为观止。橡胶,不仅是轮胎、胶鞋的原材料,更是众多工业产品不可或缺的组成部分。它的弹性、耐磨…

Win快速删除node_modules

在Windows系统上删除 node_modules 文件夹通常是一个缓慢且耗时的过程。这主要是由于几个关键因素导致的: 主要原因 文件数量多且嵌套深: node_modules 文件夹通常包含成千上万的子文件夹和文件。由于其结构复杂,文件和文件夹往往嵌套得非常…

商家转账到零钱申请内幕最详细解说

商家转账到零钱开通过程中,微信支付官方提供了多达十一种不同的转账场景,这些繁杂的选项经常让商家感到迷茫,难以选择最适合的场景。尤其是申请被拒后,一些商家会试图通过更换场景来碰运气。 不过根据我们上万例的开通经验来看&a…

STM32存储左右互搏 模拟U盘桥接SPI总线FATS读写FLASH W25QXX

STM32存储左右互搏 模拟U盘桥接SPI总线FATS读写FLASH W25QXX STM32的USB接口可以模拟成为U盘,通过FATS文件系统对连接的存储单元进行U盘方式的读写。 这里介绍STM32CUBEIDE开发平台HAL库模拟U盘桥接SPI总线FATS读写W25Q各型号FLASH的例程。 FLASH是常用的一种非易失…

自己用pip下载好模块啦,但是在pycharm里面不显示?

问题: 今天在cmd里面用pip命令安装第三方模块,最后用pip list 命令发现已经成功安装,但是在pycharm里面用该模块的时候,还是爆红,显示没有该库 。 解决方法: 第一种(项目刚创建)&am…

Qt5/6使用SqlServer用户连接操作SqlServer数据库

网上下载SQLServer2022express版数据库,这里没啥可说的,随你喜欢,也可以下载Develop版本。安装完后,我们可以直接连接尝试, 不过一般来说,还是下载SQLServer管理工具来连接数据更加方便。 所以直接下载ssms, 我在用的时候,一开始只能用Windows身份登录。 所以首先,我…

html的网页制作代码分享

<!-- prj_8_2.html --> <!DOCTYPE html> <html lang "EN"><head><meta charset"utf-8" /><title>页面布局设计</title><style type "text/css">*{padding: 0px;margin:0px;}#header{back…

代码签名证书有哪些不同类型?

在数字化时代&#xff0c;软件安全已成为企业和个人用户关注的焦点。代码签名证书作为一种数字证书&#xff0c;对软件进行数字签名和加密&#xff0c;确保了软件在传输过程中的安全性和可靠性。本文将详细介绍代码签名证书的类型及其选择方法。 代码签名证书的类型 代码签名…

易基因:表观基因组分析揭示转录因子结合区DNA甲基化表征其功能和进化背景 | 研究速递

大家好&#xff0c;这里是专注表观组学十余年&#xff0c;领跑多组学科研服务的易基因。 DNA甲基化是一种重要的表观遗传修饰&#xff0c;对调控基因组功能有多种作用。其水平在整个基因组中具有空间相关性&#xff0c;通常在被抑制区域较高&#xff0c;在转录因子&#xff08…

shell脚本条件测试

条件测试 $? 返回码 判断命令或者脚本是否执行成功&#xff08;最近的一条&#xff09; 0 ture 为真就是成功 成立 非0 false 失败或者异常 test命令 可以进行条件测试 然后根据的是返回值来判断条件是否成立 test -e 测试目录和文件是否存在 exist test -d 只能测试目…