阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

高配版 MySQL 如何升级?这里有份最新技术解析

  • 2019-11-26
  • 本文字数:2089 字

    阅读完需:约 7 分钟

高配版 MySQL 如何升级?这里有份最新技术解析

11 月 10 日,由中国 MySQL 用户组主办的 ACMUG & CRUG 2018 技术沙龙,全国巡演武汉站拉开序幕。华为云数据库也随之亮相,带来《MySQL 数据库在云端 - 华为云数据库 MySQL 实战》主题演讲,将华为云对 MySQL 内核做的大量优化为大家一一揭示。


武汉作为全国经济中心、高水平科技创新中心、商贸物流中心和国际交往中心四大功能为支撑的国家中心城市,许多高新技术企业的逐渐落户,给这座具有历史厚重的城市带来科技气息。华为云数据库的到来,为 ACMUG & CRUG、为武汉的科技色彩都添上了绚烂的一笔。


由于开源数据库已经在云上蓬勃发展,但云数据库并不是简单 VM+DBS 的堆叠, 而是需要结合软硬件做深度改造,因此,相关技术人员们正面临不同程度的挑战。本次活动主要面向 DBA(数据库管理员)、运维、开发、MySQL 用户、Redis 用户等人群,而华为云数据库技术专家带来的分享,也正是围绕他们的需求展开。

云数据库 VS 云端自建数据库

关于云数据库和云端自建数据库的差异,前者使用便捷、成本更低等,已经是老生常谈的话题。而具体到技术人员的使用过程中,云端自建数据库还会存在更多挑战,下面列举几个关键点。


云端自建数据库的挑战:


1.没有 super 权限


由于没有 super 权限,管理人员往往不能执行 reset master 等管理命令、不能通过 set 命令修改参数;此外导入数据、创建触发器等可能报错;而且不能自行删除日志,可能导致磁盘空间满,无法对数据库进行写入操作。


2.不能登录操作系统


这导致的问题主要有两个:不能接触物理文件,不能从服务器端 load 数据,对管理人员来说,相当不方便。


3.不能自由选择存储引擎


由于云端自建数据库不能自由支持第三方存储引擎,导致管理人员选择受限。


4.不能安装插件


由于不能自行安装插件,导致使用过程中某些功能或需求难以实现。


那么,云数据库又是如何解决这些问题呢?


云数据库的对应措施:


主备高可用、实例重启等由云服务商自动完成,通过 console 来修改参数,通过规避方法可以避免使用 super 权限。


通过 console 服务化方式提供,比如慢日志、错误日志等,客户从客户端执行 load data local infile 导入数据,权限默认放开。


目前支持 MEMORY、CSV、MyISAM、InnoDB、ARCHIVE、MGR_MYISAM 等主要存储引擎,满足绝大多数场景。


将一些常用插件事先安装。


事实上,云数据库与云端自建数据库的最大区别,正是在于对数据库系统的关注程度。


云端自建数据库相较传统自建数据库而言,虽然免去了机房、机架、网络、服务器、操作系统等基础设施的投入和维护,但仍然需要技术人员对数据库系统自行搭建和运维,从安装到运维,升级、补丁、备份与恢复、高可用、弹性伸缩等工作,一步都不能少。


云数据库最大的优势,则在于解决数据库的软硬问题,提供数据库从搭建到运维的一站式服务,将技术人员从繁复的日常运维中解放出来,投入到架构升级、应用优化等更重要的工作中去。

华为云数据库 MySQL 增强版

在与客户和用户的大量接触中,华为云数据库从大家亟待解决的问题入手,基于业务可靠性和可用性进行优化,提升 RDS 服务体验,解决痛点问题。


一方面,华为云 MySQL 积极拥抱社区借鉴优秀方案,回合部分代码、fix 其中的 bug,达到快速上线的要求。一方面,华为云 MySQL 主动拥抱公有云架构,面向最终的服务体系,端到端进行优化调整,根据客户可维护性诉求提升服务质量。


华为云 MySQL 从功能到架构上的优化主要有以下几个方面:


1.GTID 约束放开


社区版对于打开 GTID 有几种约束限制,会导致一些用户迁移上云需要应用改造。华为云 MySQL 搭载 HWSQL 内核,首家全面支持 GTID,无需改造应用即可迁移上云,领先市场。


2.引入线程池


传统 MySQL 采用的单线程模式,高并发场景下性能会降低。华为云引入企业版中线程池的功能,大并发下支持更多连接,性能稳定卓越。当前,华为云 MySQL 5.6 和 5.7 都引入了事务级的多线程复制,有效降低复制延迟。


3.支持存储引擎自动转换


华为云 MySQL 能自动将存储引擎 MyISAM 转换为 InnoDB,完全支持事务,同时避免表级锁,提高并发性,且兼容 MyISAM 语法,对用户完全透明,解决 MyISAM 不支持事务的问题。


4.支持 RDS 权限控制


防止用户误删除系统库或者执行一些破坏实例正常运行的命令,能保证实例的更稳定运行。


5.引入备份锁,彻底解决备份事务阻塞问题


社区版 MySQL 使用传统备份工具进行物理备份时,需执行 flush table with read lock;命令获取全局读锁;如果此前存在长事务运行未结束,读锁命令将持续处于等待状态,导致后续读写语句阻塞。华为云 MySQL 引入 backup lock,彻底解决备份事务阻塞问题,提高备份效率。


6.支持 root 账号 kill 掉其他 user 线程,线上线下体验一致


Root 能 kill 其他线程,查看每个线程的内存、CPU 使用情况,符合线下使用习惯,方便运维。


当前,华为云 MySQL 搭载 HWSQL 内核,增强连接池特性,并发 5000 ,性能稳定,QPS 超过 17 万+,高并发性能提升 50%以上。


值得一提的是,华为云近期推出了基于 Paxos 协议的一主两备三节点架构的 MySQL 金融版,解决网络孤岛、脑裂等分布式系统问题,确保数据最终一致性。保证数据库高可用和高可靠,满足金融场景下的数据库高要求。


本文转载自 HW 云数据库公众号。


2019-11-26 08:00532

评论

发布
暂无评论
发现更多内容

Android题集四大组件之Content provider、BroadcastReceiver

android 程序员 移动开发

Android:三四十岁的大龄程序员如何对后辈评价“太水技术低

android 程序员 移动开发

Android:年过35岁的程序员还有出路吗?面试了一个-46-岁程序员后

android 程序员 移动开发

一个程序员眼中的项目经理

神策技术社区

OKR 项目经理

Android面试必备知识点:Android中Handler八大问题汇总

android 程序员 移动开发

Android面试:计算机网络面试知识点系统总结,拔剑金九银十

android 程序员 移动开发

Android音视频--H,flutter小程序开发

android 程序员 移动开发

Android面试|任何东西只要够深,都是一把刀!性能优化都没搞好就别想着去找对象了

android 程序员 移动开发

Android面经分享:我是如何拿到腾讯头条美团小米的offer从小厂跳到大厂的?

android 程序员 移动开发

Apache APISIX 社区周报 | 2021 10.15-10.31

API7.ai 技术团队

API网关 社区周报 Apache APISIX

Android面试题之性能优化篇,当上项目经理才知道

android 程序员 移动开发

Android高阶:了解这些知识点,学习Binder就不成问题(1)

android 程序员 移动开发

Android高工面试(难度:四星,2021大厂Android知识点总结

android 程序员 移动开发

Android面试指南(三),kotlin匿名内部类写法

android 程序员 移动开发

Android面试题之性能优化篇(2),安卓高级开发面试题

android 程序员 移动开发

Android面试:一个进程有多少个-Context-对象?看似初级的问题

android 程序员 移动开发

Android高工面试(难度:四星(1),2021Android高级面试题总结

android 程序员 移动开发

Android面试:计算机网络面试知识点系统总结,拔剑金九银十(1)

android 程序员 移动开发

Android面试题之动画+事件处理篇,腾讯、美团Android面试经验分享

android 程序员 移动开发

Android高级工程师BAT面试题及知识点整理大全(Java基础+Android

android 程序员 移动开发

Android高阶:了解这些知识点,学习Binder就不成问题,androidapp开发教程推荐

android 程序员 移动开发

Android面试反思:开发5年crud背景,惨遭字节阿里双挂,网站开发前后端分离

android 程序员 移动开发

Android面试复盘:认真刷题,掌握原理很重要,【深夜思考】

android 程序员 移动开发

Android面试必问之Binder进程间通信机制,大厂喜欢从哪些角度考你呢?看完这篇你就懂啦

android 程序员 移动开发

Android面试题之Broadcast Receiver篇,你们觉得作为一名程序员最大的悲哀是什么

android 程序员 移动开发

Android面试题之性能优化篇(1),移动开发工程师的岗位职责

android 程序员 移动开发

Android高级面试题大全(持续更新中),字节跳动厂内部超高质量Flutter+Kotlin笔记

android 程序员 移动开发

Android面试主题整理合集(一),android开发前景

android 程序员 移动开发

Android面试官,面试时总喜欢挖基础坑,整理了26道面试题牢固你基础

android 程序员 移动开发

Android面试官:看你简历上写熟悉-AIDL,说一说-oneway-吧

android 程序员 移动开发

Android面试抱佛脚:进程间通讯学习,从Binder使用看起

android 程序员 移动开发

高配版 MySQL 如何升级?这里有份最新技术解析_数据库_HW云数据库_InfoQ精选文章