当前位置: 首页 > news >正文

docker 安装arm架构mysql8

mysql版本: 8.0.29

拉取myql   (镜像已上传阿里云,解决国内仓库被封的问题)

docker pull docker:8.0.29

通过命令运行docker    (由于安装tars需要关闭 ssl 以及启用 mysql_native_password)

docker run -d --restart=always --net=host -p 3308:3306 -v /usr/local/mysql/data:/var/lib/mysql  -v /usr/local/mysql/conf/my.cnf:/etc/my.cnf -e MYSQL_ROOT_PASSWORD=lbkj168188 -e TZ=Asia/Shanghai  --privileged registry.cn-hangzhou.aliyuncs.com/a_rm64/mysql-arm64:8.0.29 --skip_ssl --default-authentication-plugin=mysql_native_password

通过docker-compose运行docker

services:tars-mysql:image: mysql:8.0.29ports:- "3310:3306"networks:tars_net:ipv4_address: 172.25.0.2environment:MYSQL_ROOT_PASSWORD: "tars@12345"TZ: Asia/Shanghairestart: alwaysvolumes:- ~/app/tars/framework-mysql:/var/lib/mysql- /etc/localtime:/etc/localtime

下载容器内的配置文件

docker cp 容器ID:/etc/my.cnf .

修改配置文件后保存

[mysqld]
# 设置InnoDB缓冲池大小。对于专用服务器,建议从总RAM的70%开始设置;对于非专用服务器,从10%开始。
# 示例:如果你的服务器有4GB RAM,专用服务器可以设置为3GB(约3072M),非专用服务器为400M。
# innodb_buffer_pool_size = 128M# 启用二进制日志,这对于数据备份和恢复非常重要。
# log_bin# 这些设置主要用于报告服务器,默认值对事务和快速SELECT操作更快。
# 根据需要调整大小,通过实验找到最佳值。
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M# 禁用主机缓存,减少DNS解析的依赖,提高性能。
skip-host-cache# 禁用主机名解析,提高性能。
skip-name-resolve# 数据目录
datadir=/var/lib/mysql# 套接字文件位置
socket=/var/run/mysqld/mysqld.sock# 限制LOAD DATA, SELECT ... OUTFILE, 和 LOAD_FILE()等操作的目录。
secure-file-priv=/var/lib/mysql-files# 运行MySQL服务的用户
user=mysql# 禁用SSL (适配tars)
skip_ssl# 切换回旧的认证插件以增加与旧客户端的兼容性 (适配tars)
default-authentication-plugin=mysql_native_password# PID文件位置
pid-file=/var/run/mysqld/mysqld.pid[client]
# 客户端使用的套接字文件位置
socket=/var/run/mysqld/mysqld.sock# 包含其他配置文件的目录
!includedir /etc/mysql/conf.d/
# 注意:上面的"!includedir"行本身不是注释,它告诉MySQL去包含指定目录下的所有配置文件。
# 如果你想要添加注释来说明这一行的作用,可以在前面加上"#"。
# 例如:
# # 包含其他配置文件的目录
# !includedir /etc/mysql/conf.d/

上传配置文件覆盖容器内文件

docker cp my.cnf 容器ID:/etc/my.cnf

重启容器

docker restart 容器ID

由于 MySQL 8 开始,默认的 authentication plugin 从 mysql_native_password 修改为 caching_sha2_password,需要手动修改 root 用户的 plugin,以此来兼容旧的 mysqlclient 能正常连接 MySQL 8,登录 MySQL 执行以下语句:

#进入容器
docker exec -it 容器ID /bin/bash#登录mysql
mysql -u root -p#设置mysql_native_password 密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'tars@12345';#刷新配置
FLUSH PRIVILEGES;

http://www.mrgr.cn/news/78109.html

相关文章:

  • ISUP协议视频平台EasyCVR萤石设备视频接入平台银行营业网点安全防范系统解决方案
  • VM虚拟机装MAC后无法联网,如何解决?
  • 2024-2025 ICPC, NERC, Southern and Volga Russian Regional Contest(ABCGJLN)
  • 机器学习基础--基于k-means实现鸢尾花聚类
  • aws出现创建ec2连接报错(网络问题)
  • vue2 src_Todolist编辑($nextTick)
  • Leetcode(双指针习题思路总结,持续更新。。。)
  • solr 远程命令执行 (CVE-2019-17558)
  • 用 Python 从零开始创建神经网络(十):优化器(Optimizers)(持续更新中...)
  • 丹摩征文活动|实现Llama3.1大模型的本地部署
  • WebGIS地图框架有哪些?
  • 二叉树oj题解析
  • 【快捷入门笔记】mySQL基本操作大全-运算符和句子
  • 系统设计时应时刻考虑设计模式基础原则
  • 架构-微服务-环境搭建
  • uniapp+vue2重新进入小程序就清除缓存,设备需要重新扫码
  • 从Full-Text Search全文检索到RAG检索增强
  • jquery-picture-cut 任意文件上传(CVE-2018-9208)
  • python oa服务器巡检报告脚本的重构和修改(适应数盾OTP)有空再去改
  • C++ static关键字
  • 利用processR软件包实现简单的中介效应模型
  • 【分治】--- 快速选择算法
  • 解决数据传送问题:内网http传输
  • 多模态大型语言模型(MLLM)综述
  • 【R安装】R语言的详细安装及环境配置(2024年11月)
  • Wordcloud也能生成一个,带html的词云图文件吗??