仓酷云
标题:
发一篇看MySQL的开展轨迹
[打印本页]
作者:
飘飘悠悠
时间:
2015-1-16 20:10
标题:
发一篇看MySQL的开展轨迹
你不用花费很多时间和金钱来培训现有的职工,或者去花大价钱雇用那些拥有各种证书的开发者。因为MySQL的维护和管理在很大程度上是“傻瓜型”的。
MySQL
从开辟职员手中的“玩具”变成现在的“天下上最盛行的开源
数据库
”,个中的历程陪伴着产物版本晋级,和一些新功效(出格是企业数据库功效)的增添。 MySQL从开辟职员手中的“玩具”变成现在的“天下上最盛行的开源数据库”,个中的历程陪伴着产物版本晋级,和一些新功效(出格是企业数据库功效)的增添。如今,跟着MySQL5.0被完善地开辟出来,已很少有人将MySQL称为“玩具数据库”了。MySQL的丰厚功效满意了很多用户的需求,
Oracle
比来的举措标明了他们看待MySQL十分器重――Oracle曾几回三番的暗示成心收买MySQL。
MySQL的产物线路图
让我们先从MySQL的较有影响的版本产物入手下手,看一下MySQL的更新换代。
MySQL4.0
MySQL4.0是在2003年3月公布的,该版本使新的基于MySQL的使用程序取得了更普遍的使用。可是在4.0版中,MySQL不撑持
存储历程
、触发程序、服务器端指针或视图。MySQL4.0是从3.23开展而来,较之3.23版本有了很年夜的进步,次要合用于Web站点,这时候候的MySQL还不是一个企业级数据库。
以下是MySQL4.0的次要新特征:
FULLTEXT索引:最值得用户等候的大概就是FULLTEXT索引。
FULLTEXT在文本字段创立索引,为对该索引实行布尔搜刮供应了一个壮大而天真的机制。按照一样平常的开辟履历,开辟职员一般必需创立索引并会见文本数据,而FULLTEXT索引比设想中的还要好很多。
很多办理计划仅限于全字索引,FULLTEXT索引没有这类限定,同意开辟职员增加或拆分词组。
ANSISQLUNION:撑持ANSISQLUNION语句,该语句将扣问了局搜集到一个了局集。
多表操纵:能够实行多表UPDATE和DELETE。
新语句:增添了其他DBMS用户所熟习的一些非尺度的新语句(如IDENTITY和TRUNCATETABLE),和FOUND_ROWS()等新功效,这些功效能够前往无需LIMIT子句就可以前往的记录的编号。
InnoDB存储引擎:InnoDB存储引擎在事先作为服务器的尺度特征,在4.0版本中成为一个附加选项。InnoDb是同意ACID兼容事件的表范例,而非默许的MyISAM表范例,它能够加速一样平常性利用的速率,但关于关头操纵不是非常有效。
InnoDB表利用行级别锁定特征,这意味着对一个纪录的更新只锁定该纪录,而不是全部表。中选择会见大批的数据库时(关于年夜多半Web站点而言),锁定全部表相称快,可是当拔出和更新的数目靠近于选项的数目时,则速率较慢。临时以来,对MySQL的品评一向会合在MyISAM表的平安性和分歧性成绩,兼容ACID的InnoDB表在办理这些成绩上走过了很长一段路。
查询缓存:MySQL4.0在某些情形下能够更快速。这次要经由过程查询缓存得以完成,它将反复的查询了局存储起来,使速率得以进步,只管很多成熟的使用程序在某个代码级别上实行本人的查询缓存功效。某些语句在速率上也有所进步。
EmbededdedServer:MySQL4.0附带了一个EmbededdedServer库,同意使用程序以MySQL作为底层数据库。
latin1_de:MySQL4.0撑持一个分外字符集latin1_de,它可确保准确存储德语单词。
MyISAM:MySQL4.0中的MyISAM表今朝在表级别上撑持标记链接,以是Windows用户能够在表级别上创立标记链接(这关于Unix用户一直无效)。
平安模子:MySQL4.0的平安模子失掉了加强,同意办理员加倍仔细地受权允许。新的权限同意用户创立一时表、锁定表、实行某些复制义务、检察一切现有的数据库,乃至在到达最年夜毗连限制时还能举行毗连――关于DBA实行告急义务十分有效,乃至同意运转存储历程(在MySQL5中完成了此功效)。DBA依托加强的平安形式也能够限定用户每小时的毗连、更新或查询次数。
MySQL4计划运转在NovellNetware6.0之上。别的,MySQL服务器变量中有很多能够在不从头启动服务器的情形下举行变动,因为从头启动会恢复古的设置,因而这个特征十分有效。
MySQL4.1
MySQL4.1推出以后,关于某些用户而言,4.1比MySQL4.0具有更冲动民气的晋级大概:
MySQL4.1撑持子查询
不利用子查询时,很多查询能够更无效地编写,可是会有破例。子查询是尺度ANSISQL特征。
撑持Unicode(UTF-8),同意更普遍地举行国际化。
每一个列、表或数据库都能够设置分歧的字符集,假如以多种言语存储数据,这就很有需要了。
撑持地舆数据(OpenGIS)
加强的告诫发送。假如一个不敷,MySQL4.1能够将多个告诫发送到客户端,如许就关于全体数据处置非常有效。
进步了一些速率。但这些速率进步大概被MySQL4.1所承当的一切分外部分抵消。
只管MySQL手册是公布的最妙手册之一,MySQL4.1仍是附带了仅合用于该版本的HELP命令。
撑持派生表,比方:
SELECTtable1.field1FROMtable,(SELECT*FROMtable2)table3WHEREtable1.field1=table3.field1
撑持多行查询,同意运转多个查询,然后读取终极了局。
各类保护语句将存进二进制日记中,在复制时您能够简化保护义务。
CREATE...LIKE同意开辟职员按现有表的准确布局轻松地创立新表。
别的,MySQL4.1的三个明显功效包含:不乱的OpenSSL撑持、更多的测试筹办语句、更多的测试一个表的多个字符集。
MySQL4.1也许是第一个实践“长年夜成人”的MySQL版本。因为4.1版本中一些新增添的特征和功效(比方地舆数据、子选择语句、派生表),Oracle第一次入手下手真正存眷MySQL。
MySQL5.0
撑持存储历程。存储历程是一个开辟职员在其他数据库情况最经常使用的ANSISQL尺度,关于MySQL来讲,这已捷足先登了。MySQL5.0所撑持的存储历程的语法相似于OraclePL/SQL和T-SQL。
触发程序(产生某个事务时所称的存储历程)
撑持指针
真正撑持VARCHAR数据范例,办理了一个临时存在的MySQLVARCHARbug。
在MyISAM表中对RTREE索引的撑持,将使会见地舆数据变得很简单。
MySQL5.1
相对5.0版本,MySQL5.1完成了一些新的功效:
联机备份(同意增加replicationslave,而不用封闭主服务器)。
BIT范例,实践占用1位,而不是1个字符。
失利回护(failsafe)复制
任何规模的组织都可能受益于外包服务,并在一个标准化和优化的平台上统一其数据库管理任务。基于其本身的特性,DBaaS提供了敏捷和高效的数据库服务,它可以支持多变的需求。
作者:
柔情似水
时间:
2015-1-18 18:17
这就引发了对varchar和char效率讨论的老问题。到底如何分配varchar的数据,是否会出现大规模的碎片?
作者:
蒙在股里
时间:
2015-1-25 17:35
SQL语言是学习所有数据库产品的基础,无论你是做数据库管理还是做数据库开发都是这样。不过具体学习的侧重点要看你将来做哪一块,如果是做数据库管理(DBA),侧重点应该放在SQLServer的系统管理上.
作者:
老尸
时间:
2015-2-3 12:14
理解了存储结构,再阅读下性能优化的章节基本上会对sqlserver有个清晰地认识
作者:
小魔女
时间:
2015-2-8 22:05
其中最有名的应该是row_number了。这个终于解决了用临时表生成序列号的历史,而且SQLServer2005的row_number比Oracle的更先进。因为它把Orderby集成到了一起,不用像Oracle那样还要用子查询进行封装。
作者:
谁可相欹
时间:
2015-2-26 11:52
但换公司用MSSQL2K感觉自己好像根本就不了解MSSQL。什么DTS触发器以前根本没用过。
作者:
精灵巫婆
时间:
2015-3-8 14:52
对于数据库来说,查询是数据库的灵魂,那么SQL查询效率究竟效率如何呢?下文将带对SQL查询的相关问题进行讨论,供您参考。
作者:
简单生活
时间:
2015-3-16 03:10
我个人认为就是孜孜不懈的学习
作者:
飘飘悠悠
时间:
2015-3-22 19:20
理解了存储结构,再阅读下性能优化的章节基本上会对sqlserver有个清晰地认识
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2