|
个人一点点了解:
1.首先谈谈你对mysql的了解?
接触mysql有1年左右,总得来说入门简单,有些基础的同学学习语法直接可以使用,但是想更深入是有些难度的,
mysql适合初学者书籍不是很多,联机文档很重要,但看起来有些晦涩,毕竟借助前人的总结经验对学习者有一定
少走弯路裨益,MySQL支持Stored procedure/trigger/view/cursor可以完全实现业务逻辑要求,常用引擎InnoDB,
MyISAM,Memory(现在也许大部分被memcache替换),理解运行原理/优缺点/区别/索引(聚集、非聚集、普通索引)等.
2.在 LAMP 或 LNMP 架构中,MySQL 的定位到底是怎样的?
mysql仍是作为业务数据存储软件,不会单纯使用LNMP或LAMP,一般会加memcache,作为MySQL二级缓存,减少磁盘IO,加快检索与DML
3.mysql类型 char、varchar 与 text 有什么区别,平时如何的选择?
char(N) 固定字段长度,存储字符长度<N,右空格补充,>N:字符将被截取 占磁盘空间:N*(字符集),
具体根据业务需要,如身份证号,姓别等固定长度,可以用之
varchar(N) 可变长字符长度,占用磁盘空间相对较少,占磁盘空间:N*(字符集)+1(用于存放字符串实际长度),如,姓名,描述等;
text,文本存放,最大长度:65535,存放描述性语言,字符串汇总等;
MyISAM:建议使用char
InnoDB:建议使用varchar
text根据业务需求,是否一定需要,毕竟占磁盘空间,检索速度,IO,网络流量,只能建立前缀索引(只有MyISAM支持)等;
速度上:一般char比varchar快 |
|