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

什么网站可以做兼职 知乎网站建设衤金手指谷哥十四

什么网站可以做兼职 知乎,网站建设衤金手指谷哥十四,图片展示网站建设,企业二级网站怎么做一、MySQL 主从复制 (0)概述 MySQL 主从复制是一种数据同步机制,允许数据从一个主数据库(Master)复制到一个或多个从数据库(Slave)。其主要用途包括: 数据冗余与灾备:通…

一、MySQL 主从复制

(0)概述

MySQL 主从复制是一种数据同步机制,允许数据从一个主数据库(Master)复制到一个或多个从数据库(Slave)。其主要用途包括:

  • 数据冗余与灾备:通过从库提供数据备份,增强容灾能力。

  • 负载均衡:将读操作分散到多个从库,减轻主库压力。

  • 高可用性:主库故障时,从库可快速切换为主库,减少停机时间。

(1)MySQL 支持的复制类型

  1. 基于语句的复制(Statement-Based Replication, SBR)

    • 主库记录执行的 SQL 语句到二进制日志(binlog),从库重放这些语句。

    • 优点:日志量小,节省存储和传输时间。

    • 缺点:非确定性语句(如 NOW())可能导致数据不一致。

  2. 基于行的复制(Row-Based Replication, RBR)

    • 主库记录每行数据的变更细节到 binlog。

    • 优点:数据一致性高,适合复杂操作(如含变量的语句)。

    • 缺点:日志量大,可能影响性能。

  3. 混合模式复制(Mixed-Based Replication, MBR)

    • 根据操作类型自动选择 SBR 或 RBR,平衡安全性与效率。

(2)复制的工作原理过程

  1. 主库写入数据:主库将数据变更记录到 binlog。

  2. 从库 IO 线程拉取日志:从库的 IO 线程连接主库,读取 binlog 并写入本地中继日志(relay log)。

  3. 从库 SQL 线程重放日志:从库的 SQL 线程解析 relay log,重放 SQL 或行变更操作。

  4. 复制模式

    • 异步复制(默认):主库不等待从库确认,性能高但可能丢数据。

    • 半同步复制:主库至少等待一个从库接收数据后才提交事务,平衡性能与安全性。

    • 全同步复制(需第三方插件):主库等待所有从库提交事务,保证强一致性但延迟高。

二、MySQL 读写分离

(0)概述

MySQL 读写分离是一种通过分离读操作(SELECT)与写操作(INSERT/UPDATE/DELETE)的数据库架构设计,将写操作集中在主库(Master),读操作分散到从库(Slave),以提升系统性能和并发处理能力。

核心作用

  • 降低主库压力:读操作占数据库负载的 70%~90%,读写分离可将读请求分流到从库。

  • 提高扩展性:通过增加从库水平扩展读能力。

  • 提升可用性:从库故障时,读请求可路由到其他从库或主库

(1)MySQL 读写分离类型

1. 基于程序代码内部实现

原理:在应用程序代码中显式指定读/写操作的数据源,例如:

  • 使用 多数据源配置(如 Spring Boot 中配置 masterDataSource 和 slaveDataSource)。

  • 通过 AOP(面向切面编程) 或 注解 动态切换数据源(如 @ReadOnly 注解标记读操作)。

优点

  • 灵活控制:可根据业务逻辑定制路由规则(如特定查询强制走主库)。

  • 低依赖:无需额外中间件,减少运维复杂度。

缺点

  • 代码侵入性:需修改业务代码,增加维护成本。

  • 扩展性受限:新增从库需修改配置并重启应用。

2. 基于中间代理实现

原理:通过独立的中间件代理层(Proxy)自动路由请求,对应用透明。
常见工具

  • ProxySQL:高性能开源代理,支持动态路由、连接池管理、故障转移。

  • MyCAT:基于阿里开源的分布式数据库中间件,支持读写分离、分库分表。

  • MySQL Router:官方轻量级中间件,集成于 MySQL InnoDB Cluster。

工作流程

  1. 应用连接代理:应用将 SQL 请求发送到代理服务器。

  2. 代理解析 SQL:代理解析 SQL 类型(读/写)。

  3. 路由决策

    • 写操作(INSERT/UPDATE/DELETE) → 转发到主库。

    • 读操作(SELECT) → 按负载均衡策略(轮询、权重、最小连接数)分发到从库。

  4. 结果返回:代理将数据库响应返回给应用。

优点

  • 对应用透明:无需修改业务代码,降低侵入性。

  • 动态管理:支持在线添加/移除从库,代理自动感知。

  • 高可用:内置健康检查,自动剔除故障节点。

缺点

  • 性能开销:代理层可能成为性能瓶颈(需选择高性能代理如 ProxySQL)。

  • 运维复杂度:需额外维护代理服务器,增加架构复杂度。

(2)工作原理过程

  1. 请求识别

    • 中间件或应用层解析 SQL,区分读(SELECT)和写(INSERT/UPDATE/DELETE)。

  2. 路由策略

    • 写操作:直接转发至主库。

    • 读操作:按负载均衡策略(轮询、权重、随机)分发到从库。

  3. 负载均衡与故障转移

    • 中间件监控从库状态,自动剔除故障节点。

  4. 数据一致性处理

    • 强制特定读请求走主库(如通过 /* FORCE_MASTER */ 注释)。

三、主从复制与读写分离的关系

  • 基础与扩展

    • 主从复制是读写分离的基础,为读写分离提供数据同步支持。

    • 读写分离是主从复制的扩展应用,进一步提升系统性能。

  • 一致性权衡

    • 主从同步存在延迟(异步复制),读写分离可能导致“读旧数据”。

    • 解决方案:强制特定读请求走主库(如通过 ProxySQL 的 /* FORCE_MASTER */ 注解)。

四、主从复制配置 

(1)主从复制搭建

主服务器配置:
1.关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
setenforce 02.修改/etc/my.cnf文件
log-bin=/usr/local/mysql/data/mysql-bin
binlog_format=MIXED
server-id=1  #id号不能相同3.重启服务
systemctl restart mysqld4.创建用户给从服务器授权
create user 'myslave'@'%' identified by '123456';
grant replication slave on *.* to 'myslave'@'%';
alter user 'myslave'@'%' identified with mysql_native_password by '123456';5.刷新权限并查看主数据库状态信息
flush privileges;
show master status;从服务器配置:
1.修改/etc/my.cnf文件
server-id=2  //添加 唯一服务器标识符。不可以冲突2.连接主(记得关主防火墙)
change master to master_host='主IP',master_user='主账号名',master_password='',master_log_file='log名',master_log_pos='position号';
例如:
change master to master_host='192.168.10.103',master_user='myslave',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=324;3.开启从服务,启动同步
start slave;
4.查看状态  (IO ,SQL 为Yes)
show slave status\G
或
mysql -uroot -ppwd123 "show slave status\G" | grep "YES"

验证:

1. 主从 登录MySQL

2. 再主上创建新数据库,在从上查看是否同步

(2)主主复制搭建

#双机互为主从
在主从复制的基础上做(改从的配置)
1.添加配置文件 /etc/my.cof
log-bin=/usr/local/mysql/data/mysql-bin
binlog-format=MIXED
2.创建用户开启权限
create user 'myslave'@'%' identified by 'pwd123';
grant replication slave on *.* to 'myslave'@'%';
alter user 'myslave'@'%' identified with mysql_native_password by 'pwd123';
3.刷新
flush privileges;
show master status;	  #看主状态信息
4.先关闭从同步
stop slave;
5.在主上设置从为它的主
change master to master_host='主IP',master_user='主账号名',master_password='',master_log_file='log名',master_log_pos=position号;
6.双机开启从同步,查看从状态
start slave;
show master status;	


文章转载自:

http://pP1ie6Qp.sqrpb.cn
http://IwqdUnri.sqrpb.cn
http://ZKlWE3Bi.sqrpb.cn
http://5HX5RVSB.sqrpb.cn
http://iVaKtX0O.sqrpb.cn
http://sX1ldZ5E.sqrpb.cn
http://0iK9v5si.sqrpb.cn
http://Fw8ulV3J.sqrpb.cn
http://scqLyNgx.sqrpb.cn
http://RRpDWpKf.sqrpb.cn
http://ttboEGt2.sqrpb.cn
http://ZM2QYVEC.sqrpb.cn
http://TGkgUSCK.sqrpb.cn
http://G59aptyY.sqrpb.cn
http://A8858YTH.sqrpb.cn
http://saqsHubj.sqrpb.cn
http://inKl4iIs.sqrpb.cn
http://78KJPgBQ.sqrpb.cn
http://GHC4s0dK.sqrpb.cn
http://XF869cWC.sqrpb.cn
http://qQ11K4DG.sqrpb.cn
http://yhYbZPAo.sqrpb.cn
http://v3iMmr4c.sqrpb.cn
http://H9rX8uyb.sqrpb.cn
http://u5ffMkbG.sqrpb.cn
http://WaqxQ17B.sqrpb.cn
http://j2OpkIog.sqrpb.cn
http://JaxLjfR3.sqrpb.cn
http://Fm85vXFO.sqrpb.cn
http://epPK6oMD.sqrpb.cn
http://www.dtcms.com/wzjs/731229.html

相关文章:

  • 一线城市做网站工资有多少国际网店怎么开店
  • 怎么健免费网站吗莱芜求职信息查询
  • 不会代码怎么做网站免费flash素材网站
  • 做网站一般需要哪些文件夹?江干区住房和城市建设局网站
  • 企业网站建设多钱高校网站建设的优势和不足
  • 网站建设哪家好采用苏州久远网络加盟网站制作运营
  • 深圳网站优化最好的方法丝绸之路网站建设
  • 计算机网站设计怎么做网站开发赚钱方向
  • 上海网站推广方法南昌行业网站建设
  • 网站建设学那些课自己做百度网站
  • 文化局网站建设方案不是网络营销成熟阶段出现的网络营销方式
  • 网络营销薪酬公司郑州seo公司
  • 网站建设请示报告档案馆网站机房建设
  • 北京网站开开发公司电话php网站开发试题及答案
  • phpcms 手机网站传奇手游官网下载
  • 电子商务网站建设的规划和实施文化网站建设心得
  • 响应式网站用什么软件做效果电子商务基础知识
  • 网站成品作业英语网站如何做社群
  • 美丽乡村建设网站php源码办公空间
  • 江苏环泰建设有限公司网站怎样才能访问没有备案的网站
  • 百度收录网站怎么更改关键词html如何做自己的网站
  • 公司门户网站制作网站备案回访电话号码
  • 做自己的网站能赚钱吗北京平台网站建设价位
  • 游戏门户网站 织梦wordpress 字体 插件
  • 济南建设局网站建设vip视频解析网站违法吗
  • 合肥专业做网站的公司有哪些泗阳网站定制
  • 知名网站建设设计东莞网站建设优化企业
  • 古建设计网站给公司建网站
  • 免费站推广网站在线动画设计需要学什么软件有哪些
  • 江门做网站公司开网络公司打开汽车之家网页版