1.InnoDB 与 MyISAM 区别:
InnoDB: 数据存储在表空间,可通过配置分开对主键的查询性能高于其他存储引擎内部做了很多优化,从磁盘读取数据时自动在内存构建hash索引插入数据,自动构建缓冲区通过一些机制和工具真正的支持热备份支持崩溃后的安全恢复支持行级锁支持外键支持事务
MyISAM: 拥有全文索引,压缩,空间函数不支持事务,行级锁,不支持崩溃后的安全恢复表存储在两个文件,MYI,MYD
2.MySQL 事务处理事务在存储引擎层实现,所以一个事务当中,有多个存储引擎是不靠谱的在非事务的表上,执行事务操作,MySQL 不会报错。
3.索引创建原则适合建立索引的列,应该是出现在where子句,或者连接子句中。索引的基数越大,效果越好对字符串进行索引,应该建立一个前缀,节省空间为经常需要排序、分组和联合操作的字段建立索引最左前缀匹配原则,非常重要的原则注意事项:复合索引遵循前缀原则like 查询, %不能放在前面如果索引比全表扫描慢,MySQL 会放弃索引如果 or 前的列有索引,or 后没有,索引不会用到列类型如果是字符串,一定要加引号,否则索引不生效
4.定位慢查询show profileshow statusshow processlistexplain
5. 唯一索引 , 普通索引, 可以有多个 nullNULL是列的默认属性,查询中包含可为null的列,对MySQL 来说更难优化可为 null 的列需要更多的空间,当可为null的列被索引时,每个索引记录需要一个额外的字节。主键和唯一索引区别1) 主键是主键约束+唯一索引2) 主键一定包含一个唯一索引,但唯一索引不是主键3) 唯一索引列允许空值,但主键列不允许空值4) 一个表只能有一个主键,但可以有多个唯一索引

http://blog.csdn.net/fwkjdaghappy1/article/details/7703974/

6.事务特性原子,一致,隔离,持久(ACID)隔离:(未提交读,提交读,可重复读,可串行化)MVCC
7. varchar 与 char 的区别varchar用于存储可变长度的字符串,如果长度小于等于255,用一个字节,如果长度大于255,用2个字节存储。varchar(10)用11个,varchar(1000)用2个。由于是变长,update 是可能需要额外的工作,页分裂。char是定长,存储是会剔除所有末尾的空格。varchar 不会适合存储短字符串,或者所有字符长度都差不多。
8. blog 和 text对这2个的排序是依据每个列的最前 max_sort_length 字节而不是整个字符串进行排序。或者可以  order by substring();memory 引擎不支持 blog,text,这就意味着如果查询中有这2个字段,就必须使用磁盘临时表。

http://blog.csdn.net/enlyhua/article/details/53164840 数据类型

http://blog.csdn.net/enlyhua/article/details/53224997 约束

http://blog.csdn.net/enlyhua/article/details/53232236 操作

6.关于 MySQL相关推荐

  1. mysql 快捷查询数据库各表占用空间,mysql查看索引占用空间,mysql查看数据占用空间

    先贴一张图! 第一步,"很重要" 在mysql中,有一个创建之初自带的库information_schema,这个库中包含着数据库相关信息,查询数据占用空间就是使用该库,所以首先进 ...

  2. mysql并发更新数据,多用户并发修改数据解决方案。

    mysql并发更新数据,多用户并发修改数据解决方案. 在系统中,有一些如余额.资产.积分的数据,是要保证数据一致性的.如,一个人使用两个设备同时进行消费操作,如何保证数据一致性的问题. 我们一起来思考 ...

  3. mysql查询字段大小写结果相同,mysql大小写查询不敏感,mysql5.7查询不区分大小写解决方案。

    下面有两条sql,主键查询,在mysql中查询到的结果相同. SELECT* FROM USER WHEREid = 'EM58hdK4nXC';SELECT* FROM USER WHEREid = ...

  4. 数据库中自定义排序规则,Mysql中自定义字段排序规则,Oracle中自定义字段排序规则,decode函数的用法,field函数的用法

    数据库中自定义排序 场景:有一张banner表,表中有一个status字段,有0, 1, 2三个状态位,我想要 1,0,2的自定义排序(这里是重点),然后再进行之上对sequence字段进行二次排序( ...

  5. mybatis查询报错:com.mysql.cj.exceptions.DataConversionException: Cannot determine value type from string

    mybatis查询报错: com.mysql.cj.exceptions.DataConversionException: Cannot determine value type from strin ...

  6. docker一步安装mysql,docker的魅力就在于此

    正常来说,使用docker安装东西的步骤是serach它有没有,然后pull它 这里其实只要一步(如果你没有安装过.没有端口占用等问题的话!!) $ docker run -d -p 3306:330 ...

  7. 设置腾讯云linux服务器中 MySQL 允许远程访问

    申请了一台linux腾讯云服务器,想要把数据库搭建在上面,本地的Windows直接可以访问 以下就是具体的操作流程,首先你需要安装好一个mysql,安装方法–>mysql安装(Linux) 接着 ...

  8. Linux安装mysql,一步到位!

    今天在腾讯云上面买了一个服务器,想要把自己的项目部署一下,就要安装mysql,以下是我的安装步骤,在网上有很多人把install敲错了,还有的少-get,种种错误试完之后,我决定发一篇 sudo ap ...

  9. Mysql函数group_concat、find_in_set 多值分隔字符字段进行数据库字段值翻译

    Mysql函数group_concat.find_in_set进行数据库字段值翻译 场景 配方表:记录包含的原料 sources表示原料,字段值之间用逗号分隔 原料表:对应原料id和原料名称 现需要查 ...

  10. 浅谈MySQL存储引擎-InnoDBMyISAM

    浅谈MySQL存储引擎-InnoDB&MyISAM 存储引擎在MySQL的逻辑架构中位于第三层,负责MySQL中的数据的存储和提取.MySQL存储引擎有很多,不同的存储引擎保存数据和索引的方式 ...

最新文章

  1. 寻找人机之间的中间地带-评述3本人机协作的书
  2. 阿里云数据库POLARDB技术沙龙火热报名中,李飞飞,曹伟 众大神齐到场,200个席位先到先得!...
  3. wxWidgets:使用自定义对话框
  4. socks5 运行几个小时后 端口10808不通了,ss5服务正常
  5. Java并发编程的基础-interrupt方法
  6. Vue2 的学习经历 初识
  7. Windows 环境下 git 客户端中的 git-bash 和 MINGW64
  8. eclipse中如何导入jar包
  9. 数据结构 5-3-1 二叉树四种顺序遍历递归实现
  10. 开发者如何区分 5G 和 LTE 技术?
  11. opencv+Dlib python大眼代码
  12. 访问iis元数据库失败怎么解决?
  13. 大白菜U盘启动盘手动去除捆绑第三方赞助软件
  14. open3d 0.13的c++版本使用demo
  15. svn的安装出现报错问题解决办法
  16. Xcode7-“App Transport Security has blocked a cleartext HTTP (http://) resource load since it is inse
  17. php微信公众号报修系统,微信公众号如何实现在线报修系统?
  18. 出现java.sql.SQLException: Subquery returns more than 1 row错误的原因,解决方法
  19. 星球前线 | Libra最大的竞争对手是什么?Calibra高管给出答案
  20. Ubuntu 磁盘空间不足解决办法

热门文章

  1. android classloader双亲托付模式
  2. 和菜鸟一起深入学习国嵌实验之vim常用命令
  3. TabBars代码解读之——Visual Studio的自动化接口
  4. 从一个小问题洞察挣钱秘籍,却被90%的数据分析师忽略
  5. 【干货】--手把手教你完成文本情感分类
  6. [UE4]暂停游戏、退出游戏、游戏输入模式
  7. 动态规划 BZOJ2287【POJ Challenge】消失之物
  8. oracle日期函数2!
  9. Code Snippet 插件 使用——代码高亮
  10. mysqldump+系统计划任务定时备份MySql数据