收藏 分销(赏)

mysql_存储引擎和事务.doc

上传人:xrp****65 文档编号:7693665 上传时间:2025-01-12 格式:DOC 页数:8 大小:924KB 下载积分:10 金币
下载 相关 举报
mysql_存储引擎和事务.doc_第1页
第1页 / 共8页
mysql_存储引擎和事务.doc_第2页
第2页 / 共8页


点击查看更多>>
资源描述
存储引擎 最常见的是:Mysam和 innoDB 数据库的engine显示 MyISAM ,批量插入速度快,不支持事务,锁表 InnoDB 批量插入相对较慢,支持事务,锁行 -----------官方文档---------begin MySQL插件式存储引擎的体系结构 下述存储引擎是最常用的: ·         MyISAM:默认的MySQL插件式存储引擎,它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。注意,通过更改STORAGE_ENGINE配置变量,能够方便地更改MySQL服务器的默认存储引擎。 ·         InnoDB:用于事务处理应用程序,具有众多特性,包括ACID事务支持。 ·         BDB:可替代InnoDB的事务引擎,支持COMMIT、ROLLBACK和其他事务特性。 ·         Memory:将所有数据保存在RAM中,在需要快速查找引用和其他类似数据的环境下,可提供极快的访问。 ·         Merge:允许MySQL DBA或开发人员将一系列等同的MyISAM表以逻辑方式组合在一起,并作为1个对象引用它们。对于诸如数据仓储等VLDB环境十分适合。 ·         Archive:为大量很少引用的历史、归档、或安全审计信息的存储和检索提供了完美的解决方案。 ·         Federated:能够将多个分离的MySQL服务器链接起来,从多个物理服务器创建一个逻辑数据库。十分适合于分布式环境或数据集市环境。 ·         Cluster/NDB:MySQL的簇式数据库引擎,尤其适合于具有高性能查找要求的应用程序,这类查找需求还要求具有最高的正常工作时间和可用性。 ·         Other:其他存储引擎包括CSV(引用由逗号隔开的用作数据库表的文件),Blackhole(用于临时禁止对数据库的应用程序输入),以及Example引擎(可为快速创建定制的插件式存储引擎提供帮助)。 ----------------------------------end 事务 含义: 通俗来将就是,一组操作,要么同时执行,要么同时不执行。 选择存储引擎 InnoDB 事务的使用: 开启事务:start transaction; 执行sql操作 (结束事务)commit(提交)/rollback(回滚/ 撤销) 模拟银行转账示例: commit示例: 说明: (结束事务)commit(提交)/rollback(回滚/ 撤销) 之后,事务结束,如果需要再使用,那么需要重新开始事务; rollback示例: 事务原理: 建库建表的时候 要选用I nnoDB 说明: -----------------摘自官方文档--------begin 不能回滚的语句 有些语句不能被回滚。通常,这些语句包括数据定义语言(DDL)语句,比如创建或取消数据库的语句,和创建、取消或更改表或存储的子程序的语句。 您在设计事务时,不应包含这类语句。如果您在事务的前部中发布了一个不能被回滚的语句,则后部的其它语句会发生错误,在这些情况下,通过发布ROLLBACK语句不能 回滚事务的全部效果。  会造成隐式提交的语句 以下语句(以及同义词)均隐含地结束一个事务,似乎是在执行本语句前,您已经进行了一个COMMIT。 ·         ALTER FUNCTION, ALTER PROCEDURE, ALTER TABLE, BEGIN, CREATE DATABASE, CREATE FUNCTION, CREATE INDEX, CREATE PROCEDURE, CREATE TABLE, DROP DATABASE, DROP FUNCTION, DROP INDEX, DROP PROCEDURE, DROP TABLE, LOAD MASTER DATA, LOCK TABLES, RENAME TABLE, SET AUTOCOMMIT=1, START TRANSACTION, TRUNCATE TABLE, UNLOCK TABLES. ·         当当前所有的表均被锁定时,UNLOCK TABLES可以提交事务。 ·         CREATE TABLE, CREATE DATABASE DROP DATABASE, TRUNCATE TABLE, ALTER FUNCTION, ALTER PROCEDURE, CREATE FUNCTION, CREATE PROCEDURE, DROP FUNCTION和DROP PROCEDURE等语句会导致一个隐含提交。 ·         InnoDB中的CREATE TABLE语句被作为一个单一事务进行处理。这意味着,来自用户的ROLLBACK不会撤销用户在事务处理过程中创建的CREATE TABLE语句。 事务不能被嵌套。这是隐含COMMIT的结果。当您发布一个START TRANSACTION语句或其同义词时,该COMMIT被执行,用于任何当前事务。 ----------------------------------end
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服