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

分库分表之基于Shardingjdbc+docker+mysql主从架构实现读写分离(一)

        说明:请先自行安装好docker再来看本篇文章,本篇文章主要实现通过使用docker部署mysql实现读写分离,并连接数据库测试。第二篇将实现使用Shardingjdbc实现springboot的读写分离实现。

        基于Docker去创建Mysql的主从架构

#创建主从数据库文件夹mkdir -p /usr/local/mysql/masterl/confmkdir -p /usr/local/mysql/masterl/datamkdir -p /usr/local/mysql/slave1/confmkdir -p /usr/local/mysql/slave1/data初始化主数据库配置文件cd /usr/local/mysql/master1/confvi my.cnf#粘贴以下内容
[mysqld]datadir = /usr/local/mysql/master1/datacharacter-set-server = utf8lower-case-table-names = 1#主从复制-主机配置#主服务器一IDserver-id = 1
#启用二进制日志log-bin=mysql-bin
#设logbin格式binlog_format = STATEMENT#初始化从数据库配置文件cd /usr/local/mysql/slave1/confvi my.cnf#粘贴以下内容
[mysqld]
datadir = /usr/local/mysql/slave1/data30
character-set-server = utf8
lower-case-table-names = 1#主从复制-从机配置# 从服务器一IDserver-id =2
#启用中继日志
relay-log = mysql-relay#文件授权
chmod -R 777 /usr/local/mysql

        Docker部署mysql8.0

#拉取镜像docker pull mysql:8.0#构建主数据库容器
docker run --name=mysql-master-1 --privileged=true -p 8808:3306 -v /usr/local/mysql/masterl/data/:/var/lib/mysql -v /usr/local/mysql/masterl/conf/my.cnf:/etc/mysql/my.cnf -v /usr/local/mysql/masterl/mysql-files/:/var/lib/mysql-files/ -e MYSQL_ROOT_PASSWORD=root -d mysql:8.0 --lower_case_table_names=1#构建从数据库容器
docker run --name=mysql-slave-1 --privileged=true -p 8809:3306 -v /usr/local/mysql/slavel/data/:/var/lib/mysql -v /usr/local/mysql/slavel/conf/my.cnf:/etc/mysql/my.cnf -v /usr/local/mysql/slavel/mysql-files/:/var/lib/mysql-files/ -e MYSQL_ROOT_PASSWORD=root -d mysql:8.0 --lower_case_table_names=1

        编写主数据库的复制配置文件

# 主数据库创建用户slave并授权
# 创建用户,设置主从同步的账户名
# 创建用户,设置主从同步账号名
create user 'qiyu-slave'@'%' IDENTIFIED WITH mysql_native_password by 'qiyu-pwd';
# 授权
grant replication slave on *.* to 'qiyu-slave'@'%';
# 刷新权限
flush PRIVILEGES
# 查询server_id
SHOW variables like 'server_id';#  查询master状态
show master STATUS# 重置mater的binlog位点
reset master;

        编写从数据库的复制配置文件

show VARIABLES like 'server_id'--每个数据库的server_id不能一样 也可临时指定server_id的值
set GLOBAL server_id = 2-- 设置主数据库
change master to master_host='192.168.1.128',master_port=8808,master_user='qiyu-slave',master_password='qiyu-pwd',master_log_file='binlog.000001',master_log_pos=157;-- 开始同步
start slave;
# stop slave;
# reset slave;-- 查看slave状态
show SLAVE STATUS

        最终:当出现如下图时说明主从配置成功,然后就可以去测试连接了。

 

 

相关文章:

分库分表之基于Shardingjdbc+docker+mysql主从架构实现读写分离(一)

说明:请先自行安装好docker再来看本篇文章,本篇文章主要实现通过使用docker部署mysql实现读写分离,并连接数据库测试。第二篇将实现使用Shardingjdbc实现springboot的读写分离实现。 基于Docker去创建Mysql的主从架构 #创建主从数据库文件夹…...

Ajax跨域问题

什么是跨域问题? 跨域问题来源于JavaScript的"同源策略",即只有 协议主机名端口号 (如存在)相同,则允许相互访问。也就是说JavaScript只能访问和操作自己域下的资源,不能访问和操作其他域下的资源。跨域问题是针对JS和ajax的&…...

Vue + FormData + axios实现图片上传功能

当使用Vue FormData axios实现图片上传功能时,你可以按照以下步骤进行操作: 示例代码 首先,在Vue组件中,创建一个data属性来存储选择的文件和上传状态: data() {return {file: null,uploading: false}; }在模板中…...

设计模式系列:经典的单例模式

单例模式,是设计模式当中非常重要的一种,在面试中也常常被考察到。 正文如下: 一、什么时候使用单例模式? 单例模式可谓是23种设计模式中最简单、最常见的设计模式了,它可以保证一个类只有一个实例。我们平时网购时用的购物车,就是单例模式的一个例子。想一想,如果购物…...

macbook pro 散热解决办法

结论: 2017 macbook pro 13.3 寸 控制住温度, 不惧长时间满载、性能也飞起. 方案说明最低温度满载温度一、终极方案(成本 460元)120w半导体散热 导热垫31度71度二、推荐方案, 完全静音(成本 50元)828散热风扇 导热垫43度81度三、不拆机、低成本(20元)828散热风扇56度91度四、…...

高并发与性能优化的神奇之旅

作为公司的架构师或者程序员,你是否曾经为公司的系统在面对高并发和性能瓶颈时感到手足无措或者焦头烂额呢?笔者在出道那会为此是吃尽了苦头的,不过也得感谢这段苦,让笔者从头到尾去探索,找寻解决之法。 目录 第一站&…...

Django Rest_Framework(一)

1. Web应用模式 在开发Web应用中,有两种应用模式: 前后端不分离[客户端看到的内容和所有界面效果都是由服务端提供出来的。] 前后端分离【把前端的界面效果(html,css,js分离到另一个服务端或另一个目录下,python服务…...

VB+ACCESS智能公交考勤系统管理软件设计与实现

智能公交考勤系统管理软件设计 摘要:随着现代科学技术的发展,越来越多的企业对职工的考勤管理都实行了信息化管理,使用计算机系统代替繁琐冗余的手工方式来管理考勤事务。针对公交考勤的系统管理、人事管理、运营管理,提出了智能公交考勤管理系统。 智能公交考勤系统是典…...

企业电子招标采购系统源码Spring Boot + Mybatis + Redis + Layui + 前后端分离 构建企业电子招采平台之立项流程图 tbms

 项目说明 随着公司的快速发展,企业人员和经营规模不断壮大,公司对内部招采管理的提升提出了更高的要求。在企业里建立一个公平、公开、公正的采购环境,最大限度控制采购成本至关重要。符合国家电子招投标法律法规及相关规范&am…...

【ES】笔记-ECMAScript 相关介绍

ECMASript 相关介绍 什么是ECMA ECMA(European Computer Manufacturers Association)中文名称为欧洲计算机制 造商协会,这个组织的目标是评估、开发和认可电信和计算机标准。1994 年后该 组织改名为 Ecma 国际。 什么是 ECMAScript ECMAS…...

FFmpeg下载安装及Windows开发环境设置

1 FFmpeg简介 FFmpeg:FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。项目的名称来自MPEG视频编码标准,前面的"FF"代表…...

transformer面试常考题

1.位置编码有哪些?有什么区别? nn.embedding和正余弦编码两种用的多。nn.embedding是一种基于学习的嵌入方法, 通过神经网络的训练过程, 会自动学习数据中每个符号的嵌入向量表示。 而正余弦编码是一种手工设计的嵌入方式&…...

aws的EC2云服务器

亚马逊官网有免费试用1年的服务器 1. 启动生成实例 1.1 创建实例时需要生成 使用的默认的 Amazon Linux 和 一个.pem后缀的秘钥 1.2 网上下一个Mobaxterm ,实例名是公有 IPv4 DNS 地址 ,使用SSH连接,登录名是ec2-user...

hive函数大全

在hive内部有许多函数&#xff0c;如下&#xff1a; 内置运算符 关系运算符 算术运算符 逻辑运算符 复杂类型函数 内置函数内置聚合函数 数学函数 收集函数 类型转换函数 日期函数 条件函数 字符函数 内置聚合函数 内置表生成函数 1.1关系运算符 等值比较: 等值比较:<>…...

k8s概念-StatefulSet

StatefulSet 是用来管理有状态应用的控制器 StatefulSet 用来管理某Pod集合的部署和扩缩&#xff0c; 并为这些 Pod 提供持久存储和持久标识符StatefulSet | KubernetesStatefulSet 运行一组 Pod&#xff0c;并为每个 Pod 保留一个稳定的标识。 这可用于管理需要持久化存储或稳…...

HTMLCollection 和 NodeList 的详解,以及两者在开发情况下差异。

看结果直接看下文的举例子 HTMLCollection HTMLCollection 表示一个包含了元素(元素顺序为文档流中的接口)的集合(通用集合)&#xff0c;还提供了从该集合中选择元素的属性和方法。 HTMLCollection 对象中的属性和方法&#xff1a; item(index) —— 返回 HTMLCollection 中指…...

基于FPGA的超声波测距——UART串口输出

文章目录 前言一、超声波模块介绍1、产品特点2、超声波模块的时序图 二、系统设计1、系统模块框图2、RTL视图 三、源码1、div_clk_us(1us的分频)2、产生驱动超声波的信号3、串口发送模块4、HC_SR04_uart(顶层文件) 四、效果五、总结六、参考资料 前言 环境&#xff1a; 1、Quar…...

Python web实战之 Django 的 MVC 设计模式详解

技术栈&#xff1a;Python、Django、HTML、CSS、JavaScript。 概要 在 Web 开发中&#xff0c;MVC&#xff08;Model-View-Controller&#xff09;模式是一种非常常见的设计模式&#xff0c;它可以帮助我们更好地管理代码&#xff0c;提高代码的可维护性。今天就介绍如何使用 …...

Stable Diffusion VAE:改善图像质量的原理、选型与使用指南

VAE Stable Diffusion&#xff08;稳定扩散&#xff09;是一种用于生成模型的算法&#xff0c;结合了变分自编码器&#xff08;Variational Autoencoder&#xff0c;VAE&#xff09;和扩散生成网络&#xff08;Diffusion Generative Network&#xff09;的思想。它通过对变分自…...

maven里面没有plugins dependence问题解决

说明&#xff1a;今天在做Nacos、Dubbo整合的时候&#xff0c;在父模块中做了版本限制&#xff0c;出错后就又把版本控制什么都删掉&#xff0c;回退到最开始的状态&#xff0c;此时父模块下面的服务右侧的 maven里面没有plugins dependence &#xff0c;然后项目全都报错。 问…...

mpv.net:Windows平台最强大的开源媒体播放器解决方案

mpv.net&#xff1a;Windows平台最强大的开源媒体播放器解决方案 【免费下载链接】mpv.net &#x1f39e; mpv.net is a media player for Windows with a modern GUI. 项目地址: https://gitcode.com/gh_mirrors/mp/mpv.net 在Windows平台上寻找一款既强大又简洁的媒体…...

如何快速掌握《鸣潮》游戏模组开发:专业逆向工程与AES加密技术完整指南

如何快速掌握《鸣潮》游戏模组开发&#xff1a;专业逆向工程与AES加密技术完整指南 【免费下载链接】wuwa-mod Wuthering Waves pak mods 项目地址: https://gitcode.com/GitHub_Trending/wu/wuwa-mod WuWa-Mod是一个专门为热门游戏《鸣潮》&#xff08;Wuthering Waves…...

深入解析Android进程与线程间通信机制:原理、实践与优化

引言 在Android开发中,进程与线程间通信(IPC)是构建高性能、高稳定性应用的核心技术。无论是多进程协作(如系统服务、插件化框架)还是多线程并发(如UI线程与后台任务),高效的通信机制直接决定了应用的流畅性与资源利用率。本文将围绕Binder机制、Handler机制、共享内存…...

(良心整理)亲测靠谱的AI论文网站,毕业生收藏备用

毕业季论文写作真的这么难吗&#xff1f;选题卡壳、文献翻不完、写不下去、查重过不了、格式总不对…… 这份亲测靠谱的AI论文工具合集&#xff0c;涵盖中英文写作、全流程辅助和专项功能&#xff0c;免费和高性价比都有&#xff0c;从开题到定稿全程帮你搞定&#xff0c;毕业生…...

三步掌握免费文档下载神器:kill-doc浏览器脚本完全指南

三步掌握免费文档下载神器&#xff1a;kill-doc浏览器脚本完全指南 【免费下载链接】kill-doc 看到经常有小伙伴们需要下载一些免费文档&#xff0c;但是相关网站浏览体验不好各种广告&#xff0c;各种登录验证&#xff0c;需要很多步骤才能下载文档&#xff0c;该脚本就是为了…...

别再复制粘贴了!手把手教你用Git命令将本地项目一键推送到GitLab仓库(含常见错误解决)

从零掌握Git命令流&#xff1a;本地项目高效同步GitLab全指南 在代码协作开发中&#xff0c;Git已成为不可或缺的版本控制工具。尽管现代IDE提供了便捷的图形化Git操作界面&#xff0c;但真正理解并熟练运用Git命令行&#xff0c;才是开发者摆脱"界面依赖症"、深入掌…...

TurboVNC终极指南:如何快速搭建高性能远程桌面系统

TurboVNC终极指南&#xff1a;如何快速搭建高性能远程桌面系统 【免费下载链接】turbovnc Main TurboVNC repository 项目地址: https://gitcode.com/gh_mirrors/tu/turbovnc TurboVNC是一个专为高性能图形应用优化的远程桌面解决方案&#xff0c;特别适合3D渲染、视频处…...

fltk-rs主题定制技巧:打造个性化GUI界面的10个实用方法

fltk-rs主题定制技巧&#xff1a;打造个性化GUI界面的10个实用方法 【免费下载链接】fltk-rs Rust bindings for the FLTK GUI library. 项目地址: https://gitcode.com/gh_mirrors/fl/fltk-rs 想要让你的Rust GUI应用与众不同吗&#xff1f;fltk-rs作为FLTK GUI库的Rus…...

抓包科普小知识

1、什么是抓包 抓包就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作&#xff0c;通过抓包可以&#xff1a; 分析网络问思路就是设置一个中间人进程负责抓包&#xff0c;每次目标进程之间的会话都先与中间人进程通信&#xff0c;再进行转发。业务分析分析网…...

收藏! Harness 让你轻松驾驭大模型,小白也能写出高效代码

本文探讨了 AI 编程 Agent 的核心要素&#xff0c;强调 Harness&#xff08;工具、流程和反馈系统&#xff09;的重要性远超单纯依赖模型。通过实例说明&#xff0c;优化编辑格式等 Harness 设计可显著提升 Agent 成功率。文章提出&#xff0c;为 AI 准备更好的工作台&#xff…...