MySQL存储和获取数据
---恢复内容开始---
一、MySQL存储引擎?
1.引擎定义
存储引擎其实就是如何存取数据,如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。因为在关系型数据苦中数据是以表格的形式,所以存储引擎也可以称为表类型。oracle和SQL server数据库中只有一种存储引擎所以数据存储和管理机制都是一样的。而MySQL提供了多种数据数存储引擎,用户可以根据不同的需求为数据表选择不同的引擎,也可以根据自己的需要编写存储引擎。
2.MySQL引擎
MySQL中的数据用各种不同的技术存储在文件或者内存中。这些技术每一种都使用不同的存储机制、索引技巧、锁定水平,并且提供广泛的不同的的功能和呢能力。通过选择不同的的技术你能够额外的速度或者功能,从而改善应用的整体功能。
3.查询MySQL中支持的存储引擎
(1) show engines; 结束符可以用分号也可以用 \g


Eigine:存储引擎的名称
Support:是否支持该引擎
Comment:对该引擎的评论
(2) 查询支持的引擎
show variables like 'have%';

4.MySQL的主要引擎
(1)InnoDB存储引擎
该引擎已经开发了10多年,已经被一些重量级的互联网公司采用,如雅虎、谷歌等。InnoDB给MySQL的表提供了事务、回滚、崩溃修复能力和多版本并发控制和事务安全
特点和缺点如下
该引擎支持自动增长列AUTO_INCREMENT。自动增长列的值不能为空必须唯一。MySQL中自增列必须为主键,如果自动增长的列不输入值的话,则插入的值为自动
增长后的值;如果输入为空或者是0,则插入的也为自动增长的值。
该引擎支持外键。外键的表为字表,外键所依赖的表为父表。父表中被字表关联的字段必须为主键。。该引擎创建的表结构存储在.firm文件中。数据和索引存储在
innodb_data_home_dir和innodb_data_file_path表空间中。
该表提供了良好的事务管理、崩溃修复能力和并发控制,缺点是读写效率较差,占用的数据空间较大。
使用该引擎的理想情况
- 更新密集的表:该引擎特别适合处理多重并发的更新请求。
- 事务:该引擎是唯一支持事务的标准的MySQL存储引擎,者是管理敏感数据的必须软件
- 自动灾难恢复:与其他存储引擎不同的是,该引擎能够自动从灾难中恢复。虽然MyISAM能在灾难后进行修复,但是其过程要长的多。
提供高效的ACID原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)兼容和事务处理能力,以及独特的高性能和具有可扩展性的
架构要素
(2)MyISAM存储引擎
文件类型
- firm:存储表结构
- myd:存储数据,是MyData的缩写
- myI:存储索引,是MyIndex的缩写
存储格式
- 静态型:如果所有的数都是
MySQL存储和获取数据的更多相关文章
- 重新学习MySQL数据库3:Mysql存储引擎与数据存储原理
重新学习Mysql数据库3:Mysql存储引擎与数据存储原理 数据库的定义 很多开发者在最开始时其实都对数据库有一个比较模糊的认识,觉得数据库就是一堆数据的集合,但是实际却比这复杂的多,数据库领域中有 ...
- 在Zookeeper中,znode是一个跟Unix文件系统路径相似的节点,可以往这个节点存储或获取数据
在Zookeeper中,znode是一个跟Unix文件系统路径相似的节点,可以往这个节点存储或获取数据.如果在创建znode时Flag设置为EPHEMERAL,那么当创建这个znode的节点和Zook ...
- 【MySQL】随机获取数据的方法,支持大数据量
在mysql中带了随机取数据的函数,在mysql中我们会有rand()函数,很多朋友都会直接使用,如果几百条数据肯定没事,如果几万或百万时你会发现,直接使用是错误的.下面我来介绍随机取数据一些优化方法 ...
- MySQL 中随机获取数据
由于需要大概研究了一下MYSQL的随机抽取实现方法. 目前采用的方法: SELECT * FROM tablename ORDER BY RAND() LIMIT 实现原理: 通过ORDER BY R ...
- 三十一.MySQL存储引擎 、 数据导入导出 管理表记录 匹配条件
1.MySQL存储引擎的配置 查看服务支持的存储引擎 查看默认存储类型 更改表的存储引擎 设置数据库服务默认使用的存储引擎 1.1 查看存储引擎信息 mysql> SHOW ENGINES\G ...
- 用Nodejs+Express搭建web,nodejs路由和Ajax传数据并返回状态,nodejs+mysql通过ajax获取数据并写入数据库
小编自学Nodejs,看了好多文章发现都不全,而且好多都是一模一样的 当然了,这只是基础的demo,经供参考,但是相信也会有收获 今天的内容是用Nodejs+Express搭建基本的web,然后呢no ...
- [NodeJs] 用Nodejs+Express搭建web,nodejs路由和Ajax传数据并返回状态,nodejs+mysql通过ajax获取数据并写入数据库
小编自学Nodejs,看了好多文章发现都不全,而且好多都是一模一样的 当然了,这只是基础的demo,经供参考,但是相信也会有收获 今天的内容是用Nodejs+Express搭建基本的web,然后呢no ...
- 使用python读取配置文件并从mysql数据库中获取数据进行传参(基于Httprunner)
最近在使用httprunner进行接口测试,在传参时,用到了三种方法:(1)从csv文件中获取:(2)在config中声名然后进行引用:(3)从函数中获取.在测试过程中,往往有些参数是需要从数据库中获 ...
- Python+Selenium+Mysql(动态获取数据,数据库交互)
一.创建数据库连接 #!coding:utf-8 import pymysql ''' Python3之后不再支持MySQLdb的方式进行访问mysql数据库: 可以采用pymysql的方式 连接方式 ...
随机推荐
- <20180927>新开一篇章记录常用到的IT名词
(一)有些名词在市场化的今天用的很多,和IT的名词重叠和易混淆, 有些缩写根本连外国人都很少用, 国人却用的津津乐道.这篇是专门用来记录的. 1.1 SMB , 这个在IT领域用的很多, 阐述的是 “ ...
- Matplotlib常用绘图示例
一.Matplotlib介绍 Matplotlib是一个Python的2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形.通过Matplotlib,开发者可以仅需要几行代码,便可 ...
- P1474 货币系统 Money Systems(完全背包)(大水题)
题目描述 母牛们不但创建了它们自己的政府而且选择了建立了自己的货币系统.由于它们特殊的思考方式,它们对货币的数值感到好奇. 传统地,一个货币系统是由1,5,10,20 或 25,50, 和 100的单 ...
- asp.net loading 动画
https://www.cnblogs.com/AnneHan/p/7477761.htmlhttps://blog.csdn.net/qq_33769914/article/details/7115 ...
- Reflections - Java 8 - invalid constant type
异常说明 使用Reflections扫描的时候出现could not create class file from, 原因是invalid constant type: 18 异常堆栈: org.re ...
- IOZONE测试工具使用方法
iozone介绍: iozone(www.iozone.org)是一个文件系统的benchmark工具,可以测试不同的操作系统中文件系统的读写性能. 可以测试 Read, write, re-read ...
- VMware虚拟机将英文改成中文的方法
由于之前安装的虚拟机和老师要求的不同,我安装的是VMware,所以没有安装教程,没能修改系统语言,用了几次发现英文的不太方便,特别是出错的时候,看不懂系统的出错提示. 我从网上参考了https://b ...
- 学习 JS滚轮事件(mousewheel/DOMMouseScroll)
学习 JS滚轮事件(mousewheel/DOMMouseScroll) 1-1 滚轮事件兼容性的差异 IE,chrome,safari 浏览器都使用 onmousewheel, 只有firefo ...
- AMD和CMD规范
1.名词解释AMD:Asynchronous Modules Definition异步模块定义,提供定义模块及异步加载该模块依赖的机制.CMD:Common Module Definition 通用模 ...
- AI Factorization Machine(FM)算法
FM算法 参考链接: https://www.csie.ntu.edu.tw/~b97053/paper/Rendle2010FM.pdf