li
  当前位置:主页 > 基础知识 > 文章内容
li
通过数据库引擎来加速MySQL数据库(2)
来源: www.ixdba.net  作者: ixdba.net技术社区    时间:2008-03-23   阅读:3  
本文章共2826字,分2页,当前第2页,快速翻页:
 

  让所有的灵活性成为可能的开关是提供给ANSI SQL的MySQL扩展——TYPE参数。MySQL能够让你在表格这一层指定数据库引擎,所以它们有时候也指的是table formats。下面的示例代码表明了如何创建分别使用MyISAM、ISAM和HEAP引擎的表格。要注意,创建每个表格的代码是相同的,除了最后的 TYPE参数,这一参数用来指定数据引擎。

  CREATE TABLE tblMyISAM (

  id INT NOT NULL AUTO_INCREMENT,

  PRIMARY KEY (id),

  value_a TINYINT

  ) TYPE=MyISAM

  CREATE TABLE tblISAM (

  id INT NOT NULL AUTO_INCREMENT,

  PRIMARY KEY (id),

  value_a TINYINT

  ) TYPE=ISAM

  CREATE TABLE tblHeap (

  id INT NOT NULL AUTO_INCREMENT,

  PRIMARY KEY (id),

  value_a TINYINT

  ) TYPE=Heap

  你也可以使用ALTER TABLE命令,把原有的表格从一个引擎移动到另一个引擎。下面的代码显示了如何使用ALTER TABLE把MyISAM表格移动到InnoDB的引擎:

  ALTER TABLE tblMyISAM CHANGE TYPE=InnoDB

  MySQL用三步来实现这一目的。首先,这个表格的一个副本被创建。然后,任何输入数据的改变都被排入队列,同时这个副本被移动到另一个引擎。最后,任何排入队列的数据改变都被送交到新的表格里,而原来的表格被删除。

  ALTER TABLE捷径

  如果只是想把表格从ISAM更新为MyISAM,你可以使用mysql_convert_table_format命令,而不需要编写ALTER TABLE表达式。

  你可以使用SHOW TABLE命令(这是MySQL对ANSI标准的另一个扩展)来确定哪个引擎在管理着特定的表格。SHOW TABLE会返回一个带有多数据列的结果集,你可以用这个结果集来查询获得所有类型的信息:数据库引擎的名称在Type字段里。下面的示例代码说明了 SHOW TABLE的用法:

  SHOW TABLE STATUS FROM tblInnoDB

  SHOW TABLE的替换方法

  你可以用SHOW CREATE TABLE [TableName]来取回SHOW TABLE能够取回的信息。最后,如果你想使用没有被编译成MySQL也没有被激活的引擎,那是没有用的,MySQL不会提示这一点。而它只会给你提供一个缺省格式(MyISAM)的表格。除了使用缺省的表格格式外,还有办法让MySQL给出错误提示,但是就现在而言,如果不能肯定特定的数据库引擎是否可用的话,你要使用SHOW TABLE来检查表格格式。

  更多的选择意味着更好的性能

  用于特定表格的引擎都需要重新编译和追踪,考虑到这种的额外复杂性,为什么你还是想要使用非缺省的数据库引擎呢?答案很简单:要调整数据库来满足你的要求。

  可以肯定的是,MyISAM的确快,但是如果你的逻辑设计需要事务处理,你就可以自由使用支持事务处理的引擎。进一步讲,由于MySQL能够允许你在表格这一层应用数据库引擎,所以你可以只对需要事务处理的表格来进行性能优化,而把不需要事务处理的表格交给更加轻便的MyISAM引擎。对于MySQL而言,灵活性才是关键。



阅读更多内容<<上一页 · 1 · 2


  上一篇: 关于MySQL数据库的用户认证系统分...   下一篇: 针对于MySQL新增的复制特性的测试
li
 §相关评论  
 热点文章

·RewriteRule重写规则的语法:A
·apache配置文件httpd.conf参数
·Apache的配置文件http.conf参数
·HTTP协议中POST、GET、HEAD等参
·XAMPP命令之LAMPP
·Linux中安装XAMPP(LAMPP)服务器
·网页禁止右键、禁止复制等代码
·java.lang.OutOfMemoryError:
·Mysql数据库在Linux系统常用命
·mysql问答:MySQL数据库连接过多
·MySQL数据库中Show命令的用法
li
 编辑推荐
·RewriteRule重写规则的语法:A
·apache配置文件httpd.conf参数
·Apache的配置文件http.conf参数
·HTTP协议中POST、GET、HEAD等参
·XAMPP命令之LAMPP
·Linux中安装XAMPP(LAMPP)服务器
·网页禁止右键、禁止复制等代码
·java.lang.OutOfMemoryError:
·Mysql数据库在Linux系统常用命
·mysql问答:MySQL数据库连接过多
·MySQL数据库中Show命令的用法
li
 相关篇章
·关于MySQL数据库的用户认证系统分...
·在MySQL中获得更好的全文搜索结果
·教你如何使用触发器管理MySQL数据...
·用新的PHP插件实现MySQL为基础的...
·保护MySQL数据库中重要的数据注意...
·教你编写高质量、高性能的MySQL语...
·用Apache与MySQL整合实现基本身份...
·MySQL 4.1数据库中数据转换注意事...
·用Perl DBI连接MySQL数据库
·优化MySQL数据库查询的三种方法简...
·针对于MySQL新增的复制特性的测试
·关于MySQL数据库的存储引擎详细介...
·SQL Server数据库导入MySQL数据库...
·MySQL服务器内部安全数据目录访问
·MySQL数据库应该如何对抗解密高手
·利用图形界面从SQL导入导出到MyS...
·如何使用MySQL系统的发布与安装
·预防性维护MySQL数据库服务器详解
·MySQL的数据类型和建库策略详解
·MySQL中文模糊检索问题的解决方法
 
li
设为首页 | 关于我们 | 技术服务 | 收藏本站 | 网站地图 | 联系方式 | 本站友情连接