MySQL进入Oracle产品体系,获得了更多研发投入,新一代MySQL产品---MySQL5.5即将面世,较之之前的5.1版本,将获得诸多特性方面的提升,简单总结如下:
1. 默认存储引擎更改为InnoDB
InnoDB作为成熟、高效的事务引擎,目前已经广泛使用,但MySQL5.1之前的版本默认引擎均为MyISAM,此次MySQL5.5终于做到与时俱进,将默认数据库存储引擎改为InnoDB,并且引进了Innodb plugin 1.0.7。此次更新对数据库的好处是显而易见的:InnoDB的数据恢复时间从过去的一个甚至几个小时,缩短到几分钟(InnoDB plugin 1.0.7,InnoDB plugin 1.1, 恢复时采用红-黑树)。InnoDB Plugin 支持数据压缩存储,节约存储,提高内存命中率,并且支持adaptive flush checkpoint, 可以在某些场合避免数据库出现突发性能瓶颈。
Multi Rollback Segments: 原来InnoDB只有一个Segment,同时只支持1023的并发。现已扩充到128个Segments,从而解决了高并发的限制。
2. 多核性能提升
Metadata Locking (MDL) Framework替换LOCK_open mutex (lock),使得MySQL5.1及过去版本在多核心处理器上的性能瓶颈得到解决,官方表示将继续增强对MySQL多处理器支持,直至MySQL性能“不受处理器数量的限制”
3. 复制功能(Replication)加强
MySQL复制特性是互联网公司应用非常广泛的特性,作为MySQL最实用最简单的扩展方式,过去的异步复制方式已经有些不上形势,对某些用户来说“异步复制”意味着极端情况下的数据风险,MySQL5.5将首次支持半同步(semi-sync replication)在MySQL的高可用方案中将产生更多更加可靠的方案。另外Slave fsync tunning;Relay log corruption recovery和Replication Heartbeat也将实现。
4. 增强表分区功能
MySQL 5.5的分区对用户绝对是个好消息,更易于使用的增强功能,以及TRUNCATE PARTITION命令都可以为DBA节省大量的时间,有时对最终用户亦如此:
1) 非整数列分区:任何使用过MySQL分区的人应该都遇到过不少问题,特别是面对非整数列分区时,MySQL 5.1只能处理整数列分区,如果你想在日期或字符串列上进行分区,你不得不使用函数对其进行转换。很麻烦,而MySQL 5.5中新增了两类分区方法,RANG和LIST分区法,同时在新的函数中增加了一个COLUMNS关键词。在MySQL 5.1中使用分区另一个让人头痛的问题是date类型(即日期列),你不能直接使用它们,必须使用YEAR或TO_DAYS转换这些列,但在MySQL 5.5中情况发生了很大的变化,现在在日期列上可以直接分区,并且方法也很简单;
2) 多列分区:COLUMNS关键字现在允许字符串和日期列作为分区定义列,同时还允许使用多个列定义一个分区;
3) 可用性增强:truncate分区。分区最吸引人的一个功能是瞬间移除大量记录的能力,DBA都喜欢将历史记录存储到按日期分区的分区表中,这样可以定期删除过时的历史数据。 但当你需要移除分区中的部分数据时,事情就不是那么简单了,删除分区没有问题,但如果是清空分区,就很头痛了,要移除分区中的所有数据,但需要保留 分区本身,你可以:使用DELETE语句,但我们知道DELETE语句的性能都很差。使用DROP PARTITION语句,紧跟着一个EORGANIZE PARTITIONS语句重新创建分区,但这样做比前一个方法的成本要高出许多。MySQL 5.5引入了TRUNCATE PARTITION,它和DROP PARTITION语句有些类似,但它保留了分区本身,也就是说分区还可以重复利用。TRUNCATE PARTITION应该是DBA工具箱中的必备工具;
4) 更多微调功能:TO_SECONDS:分区增强包有一个新的函数处理DATE和DATETIME列,使用TO_SECONDS函数,你可以将日期/时间列转换成自0年以来的秒数,如果你想使用小于1天的间隔进行分区,那么这个函数就可以帮到你。
5. Insert Buffering 如果在buffer pool中没找到数据,那么直接buffer起来,避免额外的IO;Delete & Purge Buffering 跟插入一样,如果buffer pool中没有命中,先buffer起来,避免额外的IO。
6. Support for Native AIO on Linux
以上的特性在MySQL 5.5的社区版当中都将包括,在MySQL企业版当中,除以上更新之外,Oracle还加强了更多实用的企业级功能,包括:
1. 实现在线物理热备
MySQL 企业版将包含Innodb Hotbackup(这也许是MySQL和InnDB多年之后重新聚首的新亮点),从而一举解决过去MySQL无法进行可靠的在线实时物理备份的问题, InnoDB Hot Backup 不需要你关闭你的服务器也不需要加任何锁或影响其它普通的数据操作,这对MySQL DBA来说应该是一个不错的消息。
2. MySQL Enterprise Monitor 2.2 & Oracle Enterprise Monitor
是的,你没有看错,MySQL将可以被Oracle Enterprise Monitor监控,这是一个实现起来并不复杂,但在过去绝无可能的变化。并且MySQL企业版监控器(MySQL Enterprise Monitor)得到了更大的加强,版本更新至2.2,对MySQL服务器资源占用降低到可以忽略的地步,集成了监控,报警,SQL语句分析和给出优化建议,MySQL的一些开源监控方案相比之下显得过于简陋,对企业客户来说,MySQL变得更加可靠。
3. MySQL Workbench
过去MySQL的图形界面工具做的实在是令人难以恭维,当然这也给众多MySQL管理工具提供了市场空间,现在Oracle打算将MySQL做得比SQL-Server更加简单易用,MySQL Workbench是一款专为MySQL设计的ER/数据库建模工具,可以用来设计和创建新的数据库图示,建立数据库文档,以及进行复杂的MySQL 迁移等操作,因此内置workbench将使MySQL使用起来更简便高效。
4. 关于未来的重要提醒:Oracle的管理工具,MySQL也将能够使用,Oracle比MySQL社区想象要聪明,不是吗?当然MySQL 5.5我们还没看到这个变化,但变化已经在时间表上,MySQL社区版也能够被Oracle管理工具管理,前提你得是Oracle数据库的用户。
除了常规的Bug修复和一般性的调整以外,这个软件新发布的MySQL 5.5版本还提供了很多有意义的特性和功能。在这些特性和功能中,最重要的是更好的可扩展性和经过改进的复制(replication)功能。
在性能方面,这个软件在处理大量的并发连接的时候不再像它过去的版本那样慢到极点了。对于可以一次可以承受1000个连接的Web服务器来说,这是一个令人欢欣鼓舞的改进。当增加大量的服务器核心(超过4个)的时候,这个软件可以获得附加的性能提升,过去的版本是无法做到这一点的。
常规的性能也得到了提高。Oracle表示,按照内部的标准,在Linux上,MySQL 5.5的读写速度比5.1版本提升了360%。在Windows Server机器上,这方面性能的提升超过了1500%。Ulin说:“MySQL 5.5版本的吞吐量更高。”
在复制(replication)方面,这个软件现在支持半同步(semi-synchronous)的复制(replication)了。过去的版本只支持异步的复制,这意味着有新的数据录入原始数据库的时候,数据库的备份拷贝不能马上得到更新。
分享到:
相关推荐
通过以上步骤,您可以顺利完成从 MySQL 5.1 到 MySQL 5.5 的升级。需要注意的是,在整个升级过程中,建议始终参考 MySQL 官方文档以获取最准确的信息和指导。此外,在正式升级前最好进行一次完整的数据备份,...
升级MySQL的主要目的是为了利用新版本提供的新功能、性能改进以及安全性增强等特性。对于运行在生产环境中的MySQL服务来说,确保其稳定性和安全性是非常重要的。 #### 准备工作 在开始升级之前,请确保完成以下...
升级MySQL数据库时,尽管过程相对直接,但数据安全是首要考虑的因素。务必在升级前进行详尽的备份,以防万一出现任何问题时能恢复到原有状态。此外,升级后可能需要调整新的配置选项以充分利用MySQL 5.5的新特性,如...
如果你已经有一个名为"linux中mysql5.5"的压缩包,解压后会得到RPM文件。 2. 安装MySQL服务器:执行`sudo rpm -ivh mysql55-server.x86_64.rpm`命令,其中`x86_64`应替换为实际RPM包的架构。 3. 安装MySQL客户端:...
6. **升级 MySQL 数据库**:最后一步是运行 `mysql_upgrade` 命令来升级数据库表结构。 ```bash mysql_upgrade ``` #### 四、安全设置 安装完 MySQL 后,还需要进行一些基本的安全设置: 1. **设置 root 密码*...
### MySQL 5.5 安装与配置详细指南 #### 一、前言 MySQL 是一个广泛使用的开源关系型数据库管理系统(RDBMS),适用于多种操作系统。MySQL 5.5 版本作为早期版本之一,提供了强大的数据管理功能,本文将详细介绍 ...
在QT4.7版本中,为了连接到MySQL5.5数据库,需要特定的驱动程序,这就是`qsqlmysqld4.dll`和`qsqlmysql4.dll`。 首先,`dll`(动态链接库)文件是Windows操作系统中的共享库,它们包含可由多个程序同时使用的代码和...
在本文中,我们将详细讨论如何从MySQL5升级到MySQL5.5,包括升级前的准备工作、升级过程、可能出现的问题以及解决策略。 首先,升级前的准备工作至关重要。为了确保数据的安全,你应该在开始升级之前备份现有的...
本文档将详细介绍如何在Linux系统中安装MySQL 5.5、5.6和5.7三个不同版本,并分别通过RPM、二进制和源码三种方式进行安装。对于希望深入了解MySQL安装过程的读者来说,本文提供了丰富的信息和技术细节。 #### 二、...
- 不能跨越大版本(例如从5.5升级到5.7)。 ##### 2. Logical Upgrade(逻辑升级) - **适用场景**: 跨操作系统或大版本之间的升级。 - **实施步骤**: - 使用`mysqldump`或第三方工具如`mydumper`导出数据。 - ...
MySQL 就地升级是指在不停止数据库服务的情况下,将 MySQL 的版本从 5.5 升级到 5.6。这种升级方式可以减少停机时间,提高数据库的可用性。本文档将详细介绍 MySQL 就地升级的步骤和注意事项。 一、准备升级 在...
在升级MySQL从版本5.5.x到5.6.x时,需要遵循一系列详细的步骤,确保数据的完整性和系统的稳定性。以下是对标题和描述中提到的升级步骤的详细解读: 1. 备份当前数据库 在开始升级之前,备份当前MySQL的数据是非常...
Linux下编译安装MySQL 5.5的简单步骤涵盖了从基础环境准备到数据库软件安装的全过程。在了解这些步骤之前,需要先明确几个关键概念和组件。首先,Linux是一个类Unix操作系统,以其开源、多用户、多任务的特点在...
: Debian 6.02 (squeeze) x64 软件:MySQL 5.5.14 步骤: 1、升级系统 #apt-get update #apt-get upgrade #apt-get install chkconfig libpcre3-dev build-essential libssl-dev libncurses5-dev bison 2、准备软件 ...
在本文中,我们将深入探讨如何在CentOS 5.5操作系统上安装、优化以及进行安全设置MySQL 5.1.49。MySQL是一种流行的关系型数据库管理系统,对于...然而,随着技术的发展,建议升级到最新版本以获得更好的安全性和性能。
在IT领域,数据库管理系统是不可或缺的一部分,而MySQL作为开源、免费的关系型数据库管理系统,深受广大开发者和企业的喜爱。...此外,为了获得最新的安全更新和特性,建议升级到更现代的MySQL版本,例如5.7或8.0。
10. MySQL的升级:为用户提供从MySQL 5.0版本升级到更高版本的指导,包括授权表的升级以及数据库拷贝到另一台机器的步骤。 11. MySQL社区与资源:介绍了获取MySQL信息和社区支持的途径,包括邮件列表、在线聊天系统...
MySQL需要升级到5.5.3以上版本才支持Laravel 5.4默认的utf8mb64字符编码。因此就把MySQL升级了一下,期间还是遇到些小问题,记录一下以供参考。 升级准备 备份之前MySql目录下的data目录(数据库目录)。 MySql...
- **安全更新**:考虑到CentOS 5.5(或5.6)已是较老版本的操作系统,强烈建议升级至更现代的版本,以获得最新的安全补丁和支持。 综上所述,搭建基于CentOS 5.5(或5.6)的LNMP环境需要细致的规划与操作,从基础...