MySql数据库相关问题整理
2017-02-28 13:56
239 查看
mysql体系结构
从图中可以发现,mysql主要包括连接池、SQL接口、查询分析器、优化器、缓冲、插件式存储引擎、文件系统
mysql支持的存储引擎
MySQL中的数据用各种不同的技术存储在文件(或者内存,因为表中的记录需要通过内存和CPU产生作用)中。这其中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。这些不同的技术以及配套的相关功能在MySQL中被称作存储引擎(也称作表类型)。MySQL默认配置了许多不同的存储引擎,可以预先设置或者在MySQL服务器中启用。你可以选择适用于服务器、数据库和表格的存储引擎,以便在选择如何存储你的信息、如何检索这些信息以及你需要你的数据结合什么性能和功能的时候为你提供最大的灵活性。选择如何存储和检索你的数据的这种灵活性是MySQL为什么如此受欢迎的主要原因。其它数据库系(包括大多数商业选择)仅支持一种类型的数据存储。遗憾的是,其它类型的数据库解决方案采取的“一个尺码满足一切需求”的方式意味着你要么就牺牲一些性能,要么你就用几个小时甚至几天的时间详细调整你的数据库。使用MySQL,我们仅需要修改我们使用的存储引擎就可以了。MySQL数据库支持的存储引擎我们可以使用show engines指令查看MySQL数据库支持的存储引擎。使用show engines可以查看mysql支持的存储引擎
关于数据库存储引擎的一个恰当的比喻是:汽车都能实现行驶的功能,但是SVV和普通轿车具有不同的发动机结构。
常用存储引擎的区别
这些存储引擎的主要区别在于:是否支持大对象、是否支持事物、索引不同、锁结构不同。这些区别导致访问效率和适用范围大大不同。具体信息如下:InnoDB与MyISAM的最大不同有两点:一是支持事务(TRANSACTION);二是采用了行级锁。
连接mysql的方式
这个和进程间的通信相似,主要包括 TCP/IP套接字、命名管道等mysql事物管理
请参考数据库事物mysql锁
请参照MySQL的表锁问题(二)——InnoDB表锁问题这其中还涉及到行锁、业锁、表锁,请参考MySQL学习之——锁(行锁、表锁、页锁、乐观锁、悲观锁等)
相关文章推荐
- 关于mysql数据库权限的相关问题
- opencv相关问题整理(2)
- 关于windows phone7相关资源国际化的问题整理
- paxos问题与相关的资料记下,回头再好好整理
- oracle11g安装出现TNS:协议适配器错误问题相关整理总结
- 负边距(negative margin)的相关问题整理
- 直流无刷电机控制相关问题整理
- testNG相关问题的整理
- C/C++读写文件相关问题整理
- oracle下用户相关问题整理
- opencv相关问题整理(3)
- 常见问题及解决办法 整理之8-1(日期的相关操作)
- 常见问题及解决办法 整理之3(字符串相关操作)
- linux时间片及线程调度相关的问题 收集整理
- 整理Linux下gcc编译中关于头文件与库文件搜索路径相关问题
- opencv相关问题整理(1)
- 常见问题及解决办法 整理之1(表的相关查询)
- 常见问题及解决办法 整理之8-3(日期的相关操作)
- iOS开发与OpenGL ES相关问题整理(2)- 绘制图片上下颠倒
- 整理Linux下gcc编译中关于头文件与库文件搜索路径相关问题