部署mysql

news/2025/2/6 13:47:41/文章来源:https://www.cnblogs.com/Acaak/p/18700953

一、环境

名称 备注
操作命令对象 Docker 版本26.1.3
远程操作系统 CentOS 7.9 64位
远程管理工具 FinalShell 版本4.3.11
安装软件名称 MySQL 版本8.3.0

二、拉取镜像

2.1 查找 Docker Hub 上的 MySQL 镜像

docker search mysql
image

2.2 拉取MySQL镜像

由于我本地用的是8.3.0的,所以服务器也拉取tag8.3.0的版本
docker pull mysql:8.3.0
image

2.3 查看MySQL镜像

docker images mysql:8.3.0
image

三、在宿主机创建目录

3.1 创建挂载目录

后面用于挂载mysql容器内目录,这里就放在home目录下
mkdir -p /home/mysql/{conf,data,log}
image

3.2 创建配置文件

cd /home/mysql/conf
vim my.cnf

[client]
#设置客户端默认字符集utf8mb4
default-character-set=utf8mb4
[mysql]
#设置服务器默认字符集为utf8mb4
default-character-set=utf8mb4
[mysqld]
#配置服务器的服务号,具备日后需要集群做准备
server-id = 1
#开启MySQL数据库的二进制日志,用于记录用户对数据库的操作SQL语句,具备日后需要集群做准备
log-bin=mysql-bin
#设置清理超过30天的日志,以免日志堆积造过多成服务器内存爆满。2592000秒等于30天的秒数
binlog_expire_logs_seconds = 2592000
#解决MySQL8.0版本GROUP BY问题
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'
#允许最大的连接数
max_connections=1000
# 禁用符号链接以防止各种安全风险
symbolic-links=0
# 设置东八区时区
default-time_zone = '+8:00'

按键盘esc键退出输入,输入:wq保存退出
image

四、启动MySQL容器

-p表示端口映射
--restart=always表示容器退出时总是重启
--name表示容器命名
--privileged=true表示赋予容器权限修改宿主文件权利
-v /home/mysql/log:/var/log/mysql表示容器日志挂载到宿主机
-v /home/mysql/data:/var/lib/mysql表示容器存储文件挂载到宿主机
-v /home/mysql/conf/my.cnf:/etc/mysql/my.cnf表示容器配置文件挂载到宿主机
-e MYSQL_ROOT_PASSWORD=a12bCd3_W45pUq6表示设置mysql的root用户密码,建议用强密码
-d表示后台运行
docker run \
-p 3306:3306 \
--restart=always \
--name mysql \
--privileged=true \
-v /home/mysql/log:/var/log/mysql \
-v /home/mysql/data:/var/lib/mysql \
-v /home/mysql/conf/my.cnf:/etc/mysql/my.cnf \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:8.3.0

五、测试

使用Navicat进行连接,因为我服务器配置了ssh的密钥连接方式,所以截图多了一个ssh server。

服务器如何生成密钥对,服务器配置公钥,本地配置私钥,Navicat使用ssh隧道连接mysql数据库,可以查看如下2篇文章

服务器生成密钥对、服务器配置公钥、本地配置私钥
Navicat使用ssh隧道连接mysql数据库

常见问题 : 如果连接失败,检查一下连接服务器的ssh密钥是否正确,连接服务器的密码是否正确。检查一下安全组规则,是否有开放3306端口。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

虚拟机安装麒麟操作系统

1.新建虚拟机 参考地址:https://blog.csdn.net/weixin_52799373/article/details/144770961

7 个丑陋的利基网站,每月赚超过5000美元

​这张图由作者使用Ideogram制作。很难相信,但一些1999年的老旧丑陋网站依然存在。令人惊讶的是,它们的表现非常好。 这些网站有闪烁的文字、鲜艳的颜色和笨重的设计,让今天的网页设计师都感到不舒服。 但你猜怎么着?这些“丑陋”的网站正在为它们的拥有者赚取大量的钱。 现…

【榜单解析】2025年最具潜力的10大项目管理软件,你选对了吗?

在当今竞争激烈的商业环境中,项目管理的高效性直接影响着企业的成败。一款合适的项目管理软件,能够帮助团队提升协作效率、优化资源分配、确保项目按时交付。随着科技的不断发展,市场上涌现出了各种各样的项目管理软件,让人眼花缭乱。今天,我们就为大家详细解析 2025 年最…

高斯溅射和GIS融合之路- 将splat文件切片成3dtiles

这篇文章主要介绍了如何将高斯泼溅的splat文件切片成3DTiles格式,以便在Cesium等GIS引擎中高效渲染。通过GISBox工具实现切片,并讨论了Cesium对KHR_gaussian_splatting扩展的支持。在具体介绍山海鲸团队如何实现对高斯泼溅模型进行切片并在Cesium中渲染之前,我们先来回顾一下…

MySQL常用编码格式详解utf8、utf8mb4、utf8mb4_unicode_ci 、utf8mb4_0900_ai_ci

前言常用字符集utf8utf8mb4排序规则(Collation)utf8mb4_general_ciutf8mb4_unicode_ciutf8mb4_0900_ai_ci总结对比使用建议示例前言 在使用MySQL创建数据库时候免不了选择字符集和排序规则,不同的字符集对应不同的排序规则,不同的排序规则的性能和效果是不一样的。一般我们…

JS-50 事件类型之表单事件

表单事件是在使用表单元素及输入框元素可以监听的一系列事件 ①input事件②select事件③Change事件④reset事件⑤submit事件 1、input事件input事件当<input>、<select>、<textarea>的值发生变化时触发。对于复选框(<input type=checkbox>)或单选框(…

第一章:计算机的历史

计算机的历史 TL;DR因为有时工作量大,以及人类的懒惰性,所以诞生了计算机正文摒弃教材,来站在发明计算机的人的视角,考察为什么计算机会诞生。 思考题你是一个工程师,接到了一个任务:要求在两天之内计算十万个形如 2x+3=7 这样的方程,并返回结果,让上级进行下一步数据处…

2025年打工人自救指南:四款工作计划管理APP对比

一、微软To-Do:极简主义者的效率白月光 ✅ 核心优势: 1、多平台同步:Windows/iOS/Android/网页端实时云同步,微软账号一键打通生态。 2、智能清单管理:支持「我的一天」智能推荐任务、「步骤拆解」功能,适合任务颗粒度细的日程规划。 3、跨软件联动:与Outlook日历深度绑…

数字先锋 | 竞技科研蓝海,中南大学先“算”一步!

自计算机诞生之日起,科学研究对计算性能的无限追求,一直在不断冲击和超越摩尔定律的想象。而高校作为科研成果创新和人才培养的重要基地,其计算能力已经成为衡量自身科学技术研究、产品研发实力、人才培养水平的重要标志。在中南大学的高性能计算公共平台机房内,一排排机柜…

利用ima.copilot,打造你的AI知识库

和几位同学聊起了各路 AI+工具的强大特性,特别是对于团队来说很重要的知识库功能,是我个人认为对职场同学,特别是对于技术管理同学来说很重要的一种增强个人竞争力的途径。 在以前,如果要创建自己或者团队的知识库,需要手动去搜索信息,并且人工对信息进行梳理分类,然后手…

openmv识别颜色--单颜色识别

thresholds = [ (30, 100, 15, 127, 15, 127), # generic_red_thresholds (30, 100, -64, -8, -32, 32), # generic_green_thresholds (0, 30, 0, 64, -128, 0), ] //设置颜色阈值,分别代表lab的最大值最小值. sensor.reset() sensor.set_pixformat(sensor.RGB565) sensor.se…