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

2017网站趋势上海千锋教育

2017网站趋势,上海千锋教育,网站开发和浏览器兼容问题,网站设计与管理学习MySQL先有全局观#xff0c;细说其发展历程及特点 一、枝繁叶茂的MySQL家族1. 发展历程2. 分支版本 二、特点分析1. 常用数据库2. 选型角度及场景 三、三大组成部分四、总结 相信很多同学在接触编程之初#xff0c;就接触过数据库#xff0c;而对于其中关系型数据库中的… 学习MySQL先有全局观细说其发展历程及特点 一、枝繁叶茂的MySQL家族1. 发展历程2. 分支版本 二、特点分析1. 常用数据库2. 选型角度及场景 三、三大组成部分四、总结 相信很多同学在接触编程之初就接触过数据库而对于其中关系型数据库中的翘楚——mysql自然也是天天打交道的。恰逢今天是博主的创作纪念日那么不如我们就开启一个系列篇章来从各个维度讲解mysql力求又有广度又有深度今天就让我们开启第一课说说mysql的发展历程及特点 作者简介战斧从事金融IT行业有着多年一线开发、架构经验爱好广泛乐于分享致力于创作更多高质量内容 本文收录于 mysql 专栏有需要者可直接订阅专栏实时获取更新 高质量专栏 云原生、RabbitMQ、Spring全家桶 等仍在更新欢迎指导 Zookeeper Redis dubbo docker netty等诸多框架以及架构与分布式专题即将上线敬请期待 一、枝繁叶茂的MySQL家族 1. 发展历程 MySQL数据库的起源可以追溯到1995年由Michael Widenius和David Axmark共同开发原属于瑞典的MySQL AB公司该公司于2008年被升阳微系统Sun 收购。2009年甲骨文公司Oracle收购升阳微系统公司至此MySQL成为Oracle旗下产品。Oracle 公司区分了企业版和社区版 企业版是MySQL的商业版本由Oracle公司提供支持和服务包括高级功能、技术支持和安全性保证等。 社区版是MySQL的开源版本由MySQL社区开发和维护是免费的但不包括商业版所拥有的高级功能和技术支持 企业版和社区版的区别主要在于其支持和服务的层面大多数功能在两个版本中都是相同的。 而经过多年发展MySQL的版本也在不停迭代目前最新版本为Version 8.0。我们可以记录一下其中一些比较重要的版本以及该版本的特性 MySQL 4.0 MySQL 4.0发布于2003年是MySQL的一次重大更新。该版本增加了许多新特性包括 1 存储过程和触发器可以在MySQL中执行复杂的逻辑处理 2 支持Unicode可以存储和处理多种语言的文本数据 3 引入InnoDB存储引擎支持事务和行级锁。 MySQL 5.0 MySQL 5.0发布于2005年是MySQL的一个里程碑版本。该版本增加了许多新特性包括 引入视图可以对多个表进行简化查询 字符集支持现在可以支持更多的字符集 支持存储过程、函数和触发器的DDL语句CREATE、ALTER、DROP等- MySQL 5.5 MySQL 5.5发布于2010年是MySQL的一个重要版本。该版本增加了许多新特性包括 支持半同步复制提高了复制的可靠性和性能 支持全文搜索可以进行更高级的文本搜索 支持多线程可以提高并发性能。 MySQL 5.6 MySQL 5.6发布于2013年是MySQL的一个重要版本。该版本增加了许多新特性包括 支持NoSQL功能可以使用Memcached API操作MySQL数据库 支持多主复制提高了可扩展性和可用性 支持更多的索引和锁机制提高了查询效率。 MySQL 8.0 MySQL 8.0是目前最新的MySQL版本于2018年发布。该版本增加了许多新特性包括 改进了JSON支持可以更轻松地存储和查询JSON数据 支持Window函数可以进行更复杂的查询 改进了性能和安全性包括更快的查询和更严格的密码规则。 2. 分支版本 我们上面所介绍的都是官方版本现在是由Oracle公司维护。但其实MySQL 还有一些其他版本最常见的有MariaDB 和Percona MariaDB MariaDB是MySQL创始人之一Michael Widenius创建的MySQL分支因为他担心MySQL被Oracle收购后将会对MySQL的开源性质和社区发展产生不利影响于是在2010年创建了MariaDB分支MariaDB的目的是提供一个自由、开源、高性能、可扩展性好、与MySQL兼容的数据库系统同时包括新的、改进的特性和性能优化。 Percona Percona是由Percona公司创立的一个MySQL分支旨在为企业客户提供高性能、高可用性、高可扩展性的MySQL数据库解决方案。Percona的主要特点是提供了一些MySQL不支持的高级功能例如高性能查询日志、InnoDB存储引擎的改进等等。我们来看下这些版本之间的不同 特点/功能MySQLPerconaMariaDB兼容性兼容各大流行操作系统和开发环境兼容性良好可与MySQL插件兼容兼容性良好可与MySQL插件兼容同时支持更多的存储引擎性能相对较快性能优化可比MySQL快性能不如Percona但可靠性更高安全性安全性高可通过访问控制和SSL保护数据传输安全性较高可通过访问控制和SSL保护数据传输安全性高支持多种访问控制和SSL保护数据传输可扩展性支持垂直和水平扩展支持垂直和水平扩展提供多种扩展方案支持垂直和水平扩展提供多种扩展方案存储引擎支持多种存储引擎支持多种存储引擎包括InnoDB和XtraDB支持更多的存储引擎包括MariaDB、XtraDB、TokuDB复制支持单向复制和双向复制支持异步和半同步复制支持同步和异步复制高可用性支持主从复制可通过故障转移实现高可用性支持异步和半同步复制可通过故障转移实现高可用性支持同步和异步复制可通过Galera集群实现高可用性开发者支持社区活跃有大量开发者贡献代码社区活跃有多个主要贡献者社区活跃有多个主要贡献者支持和维护由Oracle提供支持和维护由Percona提供支持和维护可在Percona官网上下载免费社区版由MariaDB基金会提供支持和维护可在MariaDB官网上下载免费社区版 当然面对这些版本我们该如何选择呢如果对性能要求较高可以选择Percona版本如果更看重稳定性和兼容性可以选择MySQL官方版本或MariaDB。如果是使用官方版本建议使用5.7及以上的版本。 当然需要注意的是虽然我们说上述分支版本都可以算Mysql的一个分支但并不意味着完全兼容尤其是越往后发展各自差异难免越多当我们想要做版本迁移的时候一定要审慎 二、特点分析 1. 常用数据库 MySQL数据库除了我们所知道的开源免费外其实从日常使用中它还有如下特点 1高性能MySQL在处理大量数据上拥有较高的性能。MySQL支持查询缓存、分区表、多线程、索引等优化技术有助于提高性能。 2可移植性好MySQL可以在各种操作系统上运行如Windows、Linux、Unix等。 3可扩展MySQL支持集群和分布式部署可以通过水平和垂直扩展来提高性能和可靠性。 但是我们也知道除了MySQL目前还有很多其他的关系型数据库比如OracleSQL Server、PostgreSQL我这里借用一张今年的使用分布排名排名仅供参考 可以看到榜单前四名正是我们提到的这几位可以说这几个数据库已经占据了大半的市场。 2. 选型角度及场景 对于一般的使用者尤其是在项目初期无法确定后续需求的情况下去做数据库选型其实是非常困难的。但我们需要遵循几个大的方向。也就是预估负载量与性能、评估扩展难易度、可靠性与可用性、数据库安全性等我们可以对数据库进行一个简单的点评。 数据库优势劣势MySQL- 开源免费易于安装和学习- 经过市场验证性能稳定- 支持多种编程语言- 缺乏一些高级功能如分布式事务和崩溃恢复- 功能和一些企业级产品相比较少Oracle- 企业级数据库产品完整的功能集合- 可靠性高数据安全性好- 通过引入云技术能够可伸缩性和容错性- 学习曲线陡峭- 价格昂贵SQL Server- 微软开发的数据库产品与Windows系统无缝集成- 用户友好型高易于使用- 良好的可伸缩性和可扩展性- 各种功能丰富- 价格昂贵PostgreSQL- 开源免费易于安装和学习- 支持多种操作系统- 对多种数据类型的支持比较完善- 具有高度的可扩展性- 较为复杂不够直观- 性能和速度相对较慢 因为本期的主题是 MySQL 那在什么场景下选择Mysql会比较合适呢其实基于Mysql的设计与定位其适合读写比较平衡数据量不太大需要快速部署和开发、对成本敏感的场景也正是因为如此Mysql在中小型的Web应用中被广泛应用 三、三大组成部分 MySQL数据库总体分为三个部分Server层、存储引擎和插件。 Server层负责处理客户端连接、查询解析和优化、数据访问控制、事务处理、日志、replication和其他管理操作。 存储引擎负责数据的存储和检索等操作。MySQL支持多个存储引擎如InnoDB、MyISAM、MEMORY等。 物理磁盘层真正存储数据的位置保存着数据库数据以及各类日志。 如果我们有一个java程序我们从mysql数据库查询数据时其步骤主要可概括为以下几步 Java 程序通过数据库连接层与 MySQL 数据库建立连接MySQL 数据库服务层接收到连接请求后验证连接权限并解析并将请求转发给相应的存储引擎层存储引擎层接收到查询请求后进行 SQL 语句的执行如果查询涉及到表的查询存储引擎层将会向物理磁盘层发送读取磁盘数据的请求物理磁盘层通过磁盘控制器等硬件设备读取数据并将数据传递给存储引擎层存储引擎层将结果集返回给 MySQL 服务层MySQL 服务层将结果集返回给 Java 程序。 当然其具体的动作会更加复杂我们借用一张图来供大家参考 四、总结 经过前面一些基础的介绍我们不难看出MySQL是一款功能全面、性能卓越、稳定可靠、易于管理的数据库系统。应该说每个数据库都有自己的优势与劣势而MySQL凭借的开源免费和平衡的性能得到了广泛的应用和认可。今天作为第一课只是为了帮助大家有一点全局观念更深的使用技术及原理我们将马上对其进行深入剖析
http://wiki.neutronadmin.com/news/47084/

相关文章:

  • 汕头建设学校的网站医疗行业企业网站建设
  • 西安企业网站建设多少钱新乡市做网站的公司
  • 网站给他人做付刑事责任代理网络软件
  • 航班网站开发设计说明书万网网站模板购买
  • 常州高端网站建设公司哪家好广州番禺区邮政编码
  • 宁波制作手机网站企业管理培训课程销售
  • iis7架设网站学做内账的网站
  • 网站建设怎么建设深圳网站平台制作
  • 商城网站开发平台阿毛免费模板网
  • 淘宝上做网站权重景德镇网站建设哪家好
  • js 网站首页下拉广告网页版抖音入口官网
  • 深圳网站建设厂家app软件开发合同范本
  • 比较还做的调查网站临淄网站建设yx718
  • 北海网站建设公司wordpress 笔记本主题
  • 北京做网站比较好的廊坊建设局网站6
  • 张槎建网站公司视频拍摄软件
  • asp做网站 的pdf教程房产网站代理
  • 网站开发费会计分录企业型商务网站制作
  • 南京网站维护公司柳市网站优化
  • 潮流资讯类网站建设策划企业网站备案要多少钱
  • 沈阳网站设计广告公司免费ppt模板大全下载
  • saas建站和开源建站的区别青海省住房与城乡建设厅网站
  • 智能建站制作网站建动态密码是否收费
  • 自己的网站怎样做优化书店网站模板下载
  • 下载网站模板怎么使用教程2020最近的新闻大事10条
  • 网站建设问一问公司17网一起做网店广州站
  • 简述网站建设评估的指标有哪些定制型网站建设渠道
  • 大同推广型网站开发开发商城网站公司
  • 宝塔windows建设网站wordpress 菜单 表
  • 如何建设一个手机网站女性做网站