Docker部署mysql:8.0.31+dbsyncer

news2024/11/27 8:37:08

Docker部署mysql8.0.31

  • 创建本地mysql配置文件

mkdir -p /opt/mysql/log

mkdir -p /opt/mysql/data

mkdir -p /opt/mysql/conf

cd /opt/mysql/conf

touch my.config

[mysql]

#设置mysql客户端默认字符集

default-character-set=UTF8MB4

[mysqld]

#设置3306端口

port=3306

#允许最大连接数

max_connections=200

#允许连接失败的次数

max_connect_errors=10

#默认使用“mysql_native_password”插件认证

default_authentication_plugin=mysql_native_password

#服务端使用的字符集默认为8比特编码的latin1字符集

character-set-server=UTF8MB4

#开启查询缓存

explicit_defaults_for_timestamp=true

#创建新表时将使用的默认存储引擎

default-storage-engine=INNODB

#等待超时时间秒

wait_timeout=60

#交互式连接超时时间秒

interactive-timeout=600

secure_file_priv=/var/lib/mysql

[client]

default-character-set=UTF8MB4

  • 拉取镜像mysql:8.0.31

docker pull mysql:8.0.31

docker images

  • 运行镜像

docker run -d -p 3306:3306 --restart=always --privileged=true -v /opt/mysql/log:/var/log/mysql -v /opt/mysql/data:/var/lib/mysql -v /opt/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:8.0.31

  • 进入容器

docker ps

docker exec -it 9abe42c59a10 /bin/bash

mysql -u root -p

show databases;

SELECT VERSION();

五、mysql数据库开发远程访问

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';

FLUSH PRIVILEGES;

从 MySQL 8.0 开始,mysql_native_password 插件已经被弃用,默认采用 caching_sha2_password 插件。

ALTER USER 'root'@'%' IDENTIFIED WITH caching_sha2_password BY 'root';

--privileged  允许挂载数据卷,默认是读写权限rw

-d:以后台方式运行实例,(退出容器mysql依旧运行)

配置端口映射:

-p 3306:3306  指定宿主机器3306 :docker容器3306端口 映射。

mysql数据卷挂载解读:

1.日志文件挂载 :-v /data/dockerData/mysql/logs:/logs ()

将容器中的日志文件夹 /var/log/mysql 挂载到 宿主机对应的 /mydata/mysql 文件夹中。

2.数据文件挂载: -v /data/dockerData/mysql/data:/var/lib/mysql

将容器中的数据文件夹 /var/lib/mysql 挂载到宿主机对应的 /mydata/mysql/data 文件夹中。

3.mysql 配置文件挂载:-v /data/dockerData/mysql/conf/my.config:/etc/mysql/my.config

将容器的配置文件夹etc/mysql/my.config挂载到宿主机对应的 /data/dockerData/mysql/conf/my.config 文件夹中。

设置数据库root的密码:

MYSQL_ROOT_PASSWORD=数据库密码

设置mysql容器名称:

--name mysql5.7

c20987f18b13   :指定用这个镜像来创建运行实例。

所遇问题

ERROR 1524 (HY000): Plugin 'mysql_native_password' is not loaded

SHOW PLUGINS;

#安装插件

INSTALL PLUGIN auth_socket SONAME 'auth_socket.so';

更改用户的认证方法

ALTER USER 'root'@'%' IDENTIFIED WITH auth_socket;

替换root为你的实际用户名
然后我们在重新执行ALTER USER 'root'@'%' IDENTIFIED WITH auth_socket BY '123456'

Docker部署DBSyncer

DBSyncer是一款开源的数据同步中间件,它具有以下优点:
1. **多数据源支持**:DBSyncer支持广泛的数据库和数据源,包括MySQL、Oracle、SQL Server、PostgreSQL、Elasticsearch、Kafka、文件系统等,能够满足多种不同数据源之间的同步需求。
2. **自定义同步逻辑**:通过插件机制和自定义转换业务功能,DBSyncer允许用户根据自己的特定需求编写同步逻辑,增强了工具的灵活性和适用性。
3. **实时监控**:提供实时的同步状态监控和统计功能,用户可以实时查看同步进度、结果、日志等信息,便于监控和问题诊断。
4. **灵活的部署方式**:支持通过下载安装包、使用Docker容器或手动编译等多种方式进行部署,方便用户根据自己的环境和需求进行选择。
5. **高性能**:DBSyncer在设计中注重性能,能够高效地处理大量数据的同步任务。
6. **易于配置**:提供了丰富的配置选项和图形化界面,使得用户能够轻松配置数据同步任务。
7. **增量同步与全量同步**:支持增量同步和全量同步,用户可以根据数据变化和业务需求选择合适的同步策略。
8. **跨平台兼容性**:基于Java开发,可以在主流的操作系统平台上运行,如Windows、Linux、macOS等。
9. **开源社区支持**:作为一个开源项目,DBSyncer可以获得社区的支持和贡献,不断得到改进和完善。
10. **成本效益**:作为开源软件,DBSyncer可以免费使用,降低了企业的使用成本。
然而,DBSyncer也存在一些不足之处:
    开源社区较小:相较于其他一些知名数据库中间件,DBSyncer的开源社区相对较小,活跃度和贡献度相对较低,这可能会影响到其后续的发展和维护。
    技术门槛较高:DBSyncer的使用和配置相对较为复杂,需要一定的技术能力和经验,对于一些技术新手可能存在一定的学习门槛。
    稳定性有待提高:在某些场景下,DBSyncer可能会出现一些稳定性问题,例如内存占用过高、处理速度较慢等,这可能会影响到数据同步的效率和可靠性。
    功能有待进一步完善:虽然DBSyncer已经具备一些基本的数据同步功能,但在某些高级功能方面还有待进一步完善,例如数据校验、断点续传等。

# 从Docker Hub拉取(以最新镜像为例,具体镜像名和标签可能有所不同)  
docker pull crazylife/dbsyncer-web:latest 
# 或者从阿里云镜像仓库拉取(推荐)  
docker pull registry.cn-hangzhou.aliyuncs.com/xhtb/dbsyncer:latest  
# 或者  
docker pull registry.cn-hangzhou.aliyuncs.com/lifewang/dbsyncer:latest

http://192.168.68.143:18686/

1、添加连接

2、配置数据库同步

 

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

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

相关文章

[SUCTF 2019]EasySQL--详细解析

信息搜集 进入界面是一个搜索框: 查看一下源代码,显示是POST传参: 随便上传个数字1: 抓包测试一下闭合,发现以双引号闭合会回显nonono,单引号闭合则无回显。 由于没有报错信息,所以我们不能确定具体的闭…

警钟长鸣,防微杜渐,遨游防爆手机如何护航安全生产?

近年来,携非防爆手机进入危险作业区引发爆炸的新闻屡见报端。2019年山西某化工公司火灾,2018年延安某煤业瓦斯爆炸,均因工人未用防爆手机产生静电打火引发。涉爆行业领域企业量大面广,相当一部分企业作业场所人员密集,…

【智能流体力学】RAG大模型方法:解决固体力学和流体动力学问题

【使用 AutoGen + GPT-4o + Chainlit UI 进行工程仿真的对话式多智能体 AI 聊天机器人】 本项目构建了一个由多个AI代理组成的系统,这些代理通过使用Microsoft AutoGen进行对话交互,能够自主地创建和仿真固体力学(FEA)和流体动力学(CFD)问题。每个AI代理都擅长规划、问题…

Redis与MySQL如何保证数据一致性

Redis与MySQL如何保证数据一致性 简单来说 该场景主要发生在读写并发进行时,才会发生数据不一致。 主要流程就是要么先操作缓存,要么先操作Redis,操作也分修改和删除。 一般修改要执行一系列业务代码,所以一般直接删除成本较低…

Java项目实战II基于微信小程序的校运会管理系统(开发文档+数据库+源码)

目录 一、前言 二、技术介绍 三、系统实现 四、核心代码 五、源码获取 全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导 一、前言 在充满活力与激情的校园生活中,校运会不仅是…

【西瓜书】神经网络-MP神经元、感知机和多层网络

神经网络(neural networks)的定义:神经网络是由具有适应性的简单单元组成的广泛并行互联的网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应。(T. Kohonen 1988年在Neural Networks创刊号上给出的定义…

《安富莱嵌入式周报》第346期:开源2GHz带宽,12bit分辨率,3.2Gsps采样率示波,开源固件安全分析器, 开源口袋电源,开源健康测量,FreeCAD

周报汇总地址:嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 视频: https://www.bilibili.com/video/BV1TYBhYKECK/ 《安富莱嵌入式周报》第346期:开源2GHz带…

介绍一下atoi(arr);(c基础)

hi , I am 36 适合对象c语言初学者 atoi(arr)&#xff1b;是返回整数(int型)&#xff0c;整数是arr数组中字符中数字 格式 #include<stdio.h> atoi(arr); 返回值arr数组中的数字 未改变arr数组 #include<stdlib.h>//atoi(arr); 返 <stdlib> int main(…

Docker: 教程07 - ( 如何对 Docker 进行降级和升级)

如果我们使用 docker 来管理容器&#xff0c;那么保持 docker 引擎的更新将会是十分重要的&#xff0c;这一篇文章我们将会讨论如何对Docker 进行降级和升级。 准备工作 - docker 环境 我们需要拥有一个安装好 docker 的运行环境。 如果你需要了解如何安装 docker 可以通过如…

ArcGIS pro中的回归分析浅析(加更)关于广义线性回归工具的补充内容

在回归分析浅析中篇的文章中&#xff0c; 有人问了一个问题&#xff1a; 案例里的calls数据貌似离散&#xff0c;更符合泊松模型&#xff0c;为啥不采用泊松而采用高斯呢&#xff1f; 确实&#xff0c;在中篇中写道&#xff1a; 在这个例子中我们为了更好地解释变量&#x…

第R4周:LSTM-火灾温度预测(TensorFlow版)

>- **&#x1f368; 本文为[&#x1f517;365天深度学习训练营]中的学习记录博客** >- **&#x1f356; 原作者&#xff1a;[K同学啊]** 往期文章可查阅&#xff1a; 深度学习总结 任务说明&#xff1a;数据集中提供了火灾温度&#xff08;Tem1&#xff09;、一氧化碳浓度…

《操作系统 - 清华大学》5 -4:虚拟技术

文章目录 0. 虚拟存储的定义1. 目标2.局部性原理3. 虚拟存储的思路与规则4. 虚拟存储的基本特征5. 虚拟页式存储管理5.1 页表表项5.2 示例 0. 虚拟存储的定义 1. 目标 虚拟内存管理技术&#xff0c;简称虚存技术。那为什么要虚存技术&#xff1f;在于前面覆盖和交换技术&#…

MYSQL 表的增删改查(上)

目录 1.新增数据 2.查询数据 一般查询 去重查询 排序查询 关于NULL 条件查询 分页查询 1.新增数据 语法&#xff1a;insert into 表名[(字段1&#xff0c;字段2...)] values (值&#xff0c;值....); 插入一条新数据行&#xff0c;前面指定的列&#xff0c;要与后面v…

OSPTrack:一个包含多个生态系统中软件包执行时生成的静态和动态特征的标记数据集,用于识别开源软件中的恶意行为。

2024-11-22 &#xff0c;由格拉斯哥大学创建的OSPTrack数据集&#xff0c;目的是通过捕获在隔离环境中执行包和库时生成的特征&#xff0c;包括静态和动态特征&#xff0c;来识别开源软件&#xff08;OSS&#xff09;中的恶意指标&#xff0c;特别是在源代码访问受限时&#xf…

[Docker-显示所有容器IP] 显示docker-compose.yml中所有容器IP的方法

本文由Markdown语法编辑器编辑完成。 1. 需求背景: 最近在启动一个服务时&#xff0c;突然发现它的一个接口&#xff0c;被另一个服务ip频繁的请求。 按理说&#xff0c;之前设置的是&#xff0c;每隔1分钟请求一次接口。但从日志来看&#xff0c;则是1秒钟请求一次&#xff…

如何寻找适合的HTTP代理IP资源?

一、怎么找代理IP资源&#xff1f; 在选择代理IP资源的时候&#xff0c;很多小伙伴往往将可用率作为首要的参考指标。事实上&#xff0c;市面上的住宅IP或拨号VPS代理IP资源&#xff0c;其可用率普遍在95%以上&#xff0c;因此IP可用率并不是唯一的评判标准 其实更应该关注的…

idea_卸载与安装

卸载与安装 卸载1、设置 -> 应用2、查找到应用&#xff0c;点击卸载3、把删除记录和设置都勾选上4、删除其它几个位置的残留 安装1、下载安装包2、欢迎安装 -> Next3、选择安装目录 -> Next4、创建快捷图标和添加到环境变量5、确认文件夹的名称 -> Install6、完成安…

【Axure高保真原型】天气模板

今天和大家分享天气模板的原型模板&#xff0c;里面包括晴天、多云、阴天、小雨、大雨、暴雨、强雷阵雨、小雪、中雪、大雪、暴雪、雨夹雪、微风、强风、狂风、龙卷风、轻雾、大雾等&#xff0c;后续也可以自行添加。 这个模板是用中继器制作的&#xff0c;所以使用也很方便&a…

深度学习模型:循环神经网络(RNN)

一、引言 在深度学习的浩瀚海洋里&#xff0c;循环神经网络&#xff08;RNN&#xff09;宛如一颗独特的明珠&#xff0c;专门用于剖析序列数据&#xff0c;如文本、语音、时间序列等。无论是预测股票走势&#xff0c;还是理解自然语言&#xff0c;RNN 都发挥着举足轻重的作用。…