MySQL 数据库架构灾难恢复解决方案MySQL 数据库架构 灾难恢复解决方案 MySQL InnoDBClusterSet 介绍 MySQL SE 罗伟文 2 / 55 Safe Harbor Statement 以下内容旨在概述我们的一般产品方向。它仅供参考,不得纳入任何合同。它并不提供任何材料、代码或功能的承诺,不应据此做出购买决策。 Oracle 产品描述的任何特性或功能的开发、发布和时间安排仍由 Oracle 自行决定。 Oracle and/or its affiliates. 6 / 55 7 / 55 "过去" - 手动 • 设置复制拓扑通常是手动完成的,需要执行许多步骤 包括用户管理、恢复备份、配置复制... • MySQL 只提供技术部分,让用户来设置(始终自定义 的)架构。 • 甚至需要其他软件... 为DBA 和专家带来了大量工作,他 们花时间自动化和集成他们的定制架构 Copyright 手动故障转移) 无写入性能影响 特点 • 简单易用 • 熟悉的界面和可用性 mysqlsh,CLONE,... • 在线添加/删除节点/集群 • 路由器集成, 拓扑结构发生变化时无需重新配置 应用程序 M ySQL InnoDB ClusterSet – 3 个数据中心 Copyright @ 2021 Oracle and/or its affiliates. 14 / 550 码力 | 52 页 | 3.07 MB | 1 年前3
Qcon北京2018--《MySQL的Docker容器化大规模实践》--王晓波同程旅游早期的数据库都以单库的MySQL。 ■ MySQL的单库,导致TPS最终还是会成为一个瓶颈。 ■ MySQL+DB中间件解决水平拆分问题。 ■ MySQL水平拆分的引入会使数据库实例数量大幅上升,传统运维手段维护成本高,交付能力差。 MySQL数据库为何要Docker化 1.MySQL数据库迅速爆炸式增长后,服务器规模不断增大,快速部署是个问题。 2.随着业务的发展,扩容数据库的不方便不快捷,也是个问题。 随着业务的发展,扩容数据库的不方便不快捷,也是个问题。 3.大量数据量小的数据库系统也单独部署在物理机,浪费问题突出。 4.DBA的数据库自动化标准化运维的需求。 5.Docker在同程的大规模使用,应用部署环境100%容器化,有Docker丰富的经验 。 让数据库的部署点单化开启 2核4G 4核4G 4核8G 8核8G 8核16G 16核16G 16核64G 32核64G 32核128G 一主一从 分片集群 一主多从 一主多从 SATA-SSD PCIE-SSD 大容量磁盘SAS 配置 DB架构 硬件选型 机房 A机房 B机房 C机房 D机房 容器化之后的MySQL就是一个私有DB云 主 从 集 群 创 建 分 片 集 群 创 建 集 成 高 可 用 方 案 巨 细 无 遗 的 监 控 项 精 美 的 图 形 展 示 便 捷 的 告 警 管 理 慢 日 志 分 析 及 查 看 自0 码力 | 32 页 | 7.11 MB | 1 年前3
使用 Docker 建立 MySQL 集群使用 Docker 建立 Mysql 集群 软件环境介绍 操作系统:Ubuntu server 64bit 14.04.1 Docker 版本 1.6.2 数据库:Mariadb 10.10 (Mariadb 是 MySQL 之父在 MySQL 被 Oracle 收购之后 创建的分支,性能上优于 MySQL 开源版本) 第一步 安装 Docker 对于 Ubuntu,建议直接联网安装 Docker 第二步 运行 Mariadb 容器 首先要将数据镜像拉下来 docker pull mariadb:latest 注意,如果不加:latest 标签,docker 会把所有的镜像版本都拉下来。 然后我们就可以启动镜像了,参数方面需要注意的有一下几点: 1,-name <给容器取个好记的名称> 2,-e MYSQL_ROOT_PASSWORD =‘<给数据库一个 root 用户密码>’ 3,-p <映射到本机的端口>:3306 SE 环境变量可以使容器在 运行时同时创建你所需要的数据库和带有全部权限的用户及其对应密码 6,设定 TERM 环境变量的值可以解决容器不能进入 mysql 控制台的问题。 对于不是自己建立的镜像,建立出来的容器未必能一次达到要求,建议是将 run 命令写成脚本,创建后使用 docker inspect <容器名> 仔细查看容器信息,关注镜像公开的端口和文件目录。如果发现达不到要求,使 用 docker0 码力 | 3 页 | 103.32 KB | 1 年前3
Kubernetes Operator 实践 - MySQL容器化• WorkQueue:事件合并、过滤、延时、限速 Operator CRD 里有什么 MySQL CRD • Spec:配置 & 期望状态 • Status:当前状态 MySQL 配置 • 版本 • 端口 • 存储信息 • 配置文件 集群配置 • 副本数 • 高可用模式 K8s 调度信息 • 资源套餐 • 亲和性信息 • NodeSelector 使用 CRD 集群1 mha-node mha-node MHA 在 operator 的实现 • mha-manager 部署在 operator 容器中 • mha-node 为边车容器 • 镜像中设置 ssh 免密认证 Operator 在集群成员都正常运行 后,启动 manager 进程 mysql-pod-1 app-container mysql init-container app-container mysql-operator - mha-mgr-3306 - mha-mgr-3420 - … … CRD mysqlcluster MHA 故障迁移 • 从库故障 • 主库故障 集群切主 pod 都正常运行? 调度 pod k8s mha operator 重新调度 mha MHA 扩缩容 • 扩容:直接执行 • 缩容:集群 master0 码力 | 42 页 | 4.77 MB | 1 年前3
MySQL高可用 - 多种方案.................... 4 2.4.3 Mysql 的安装和配置 ........................................................................................ 4 2.4.4 Mysql 的主主同步配置 ......................................... ....... 5 2.4.7 Keepalived 的配置 .......................................................................................... 5 2.4.8 Master 和 backup 的 realserver 的配置 ............................... ................... 10 3.5.2 Mysql 的安装和配置 ...................................................................................... 10 3.5.3 Mysql 的主主同步配置 ..........................................0 码力 | 31 页 | 874.28 KB | 1 年前3
MySQL 8.0.17 调优指南(openEuler 20.09).......................................................................................3 2.1 BIOS 配置................................................................................................... 介绍 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle 旗下产品。MySQL是最流行的关系型数据库管理系统之一,在Web应用方面,MySQL 是最好的RDBMS (Relational Database Management System,关系数据库管理系 统)应用软件之一。 MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将 所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了 双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其 是开放源码这一特点,一般中小型网站的开发都选择 MySQL作为网站数据库。 1.2 调优原则 性能调优从大的方面来说,在系统设计之初,需要考虑硬件的选择,操作系统的选 择,0 码力 | 11 页 | 223.31 KB | 1 年前3
谈谈MYSQL那点事互联网常用数据库市场占有率 互联网通用架构体制 谈谈 MySQL 数据库那些事 MySQL MySQL 基本介绍 基本介绍 MySQL MySQL 优化方式 优化方式 MySQL MySQL 技巧分享 技巧分享 Q Q & & AA MyISAM MyISAM 特点 特点 MyISAM vs MyISAM vs InnoDB InnoDB • 数据存储方式简单,使用 上面分担一些读压力 和流量,比如一些报表的读取以及静态配置数据的读取模块 都可以放到 M2 上面。比如月统计报表,比如首页推荐商品 业务实时性要求不是很高,完全可以采用这种弱一致性的设 计架构模式。 中间一致性 如果既不是很强的一致性又不是很弱的一致性,那 么我们就采取中间的策略,就是在同机房再部署一个 S1(R) ,作为备库,提供读取服务,减少 M1(WR) 的 压力,而另外一个 压力,而另外一个 idc 机房的 M2 只做 standby 容灾方 式的用途。 当然这里会用到 3 台数据库服务器,也许会增加采 购压力,但是我们可以提供更好的对外数据服务的能力和 途径,实际中尽可能两者兼顾。 MySQL 架构设计—高可用架构 系统优化:硬件、架构 系统优化:硬件、架构 服务优化 服务优化 应用优化 应用优化 MySQL MySQL 优化方式0 码力 | 38 页 | 2.04 MB | 1 年前3
MySQL 企业版功能介绍ORACLE 产品介绍 MySQL 企业版 全球广受欢迎的开源数据库 重要特性 Oracle MySQL 服务云 MySQL 数据库 MySQL 企业级备份 MySQL 企业级高可用性 MySQL 企业级可扩展性 MySQL 企业级身份验证 MySQL 企业级 TDE 多种性能图表 MySQL Workbench Oracle 标准支持服务 “借助 MySQL Query Analyzer, 我们可以识别和分析存在问题的 SQL 代码,同时将数据库性能提 升两倍。更加重要的是,我们在三 天内就完成了这一任务,而过去则 需要数周之久。” —Keith Souhrada, 软件开发工程师, Big Fish Games MySQL MySQL 分组复制来确保数据库的高可用性 通过 MySQL 企业级可扩展性应对指数级增长的用户和数据量 通过 MySQL 企业级备份执行热备份和恢复,从而降低数据丢失的风险 通过 MySQL 企业级安全性来利用现有安全基础架构 使用加密、密钥生成和数字签名保护敏感数据 通过 MySQL 企业级防火墙阻止针对数据库的攻击(如 SQL 注入)0 码力 | 6 页 | 509.78 KB | 1 年前3
如何用 MySQL 构建全方位高可用应用从数据库 • 会话线程:处理来自应用程序的查询 - 将 数据写入主数据库,将关联事件写入二进制 日志 • 转储线程:读取二进制日志中的事件,然后 将其发送到从数据库 • I/O 线程:接收复制事件,并将其存储在从 数据库的中继日志中 • SQL 线程:读取从数据库的中继日志中的复 制事件,然后将其应用到从数据库 MySQL 复制工作流 会话 二进制 日志 主数据库 转储 和/或其附属公司。保留所有权利。 为何进行复制? •将数据库从“主服务器”复制到“从服务器” – 数据的冗余副本奠定了高可用性的基础 – 通过在复制场中进行分布式查询来扩展 主 从 Web/应用服务器 写入和读取 读取 4/16/2017 版权所有 2015,Oracle 和/或其附属公司。保留所有权利。 9 •异步 – MySQL 默认设置 – 并行:主数据库向应 用程序发送确认,在 存储引擎上提交,然 存储引擎上提交,然 后将事务发送到从数 据库 • 快速 • 如果主数据库停机有可 能丢失更改 •半同步 – MySQL 5.5+ - 在 MySQL 5.7 中进行了 增强 – 串行:主数据库等待 从数据库记录更改并 将更改刷新到磁盘, 然后以并行方式提交 到存储引擎并向应用 程序发送确认 • 中度延迟 • 无损 (MySQL 5.7) •同步 – 仅 MySQL Cluster 提供0 码力 | 40 页 | 2.19 MB | 1 年前3
运维上海2017-从理论到实践,深度解析MySQL Group Replication -徐春阳活的集 群依然整体可用。------paxos协议。 • 更高级别地保证数据的一致性 ------vs mysql的异步/半同 步复制。 MGR�����:! • 将源自多个数据库节点并发无序的消息进行全局排序。目的 是保证每个节点执行的事务完全相同,顺序也相同。 • 所有的消息在各个节点处理动作完全相同,如果某个消息在 某个节点被丢弃(不处理 ,在其他节点也将被丢弃。0 码力 | 32 页 | 9.55 MB | 1 年前3
共 10 条
- 1













