MySQL面试知识

发布时间:2018-05-19 14:39:55编辑:丝画阁阅读(293)

innodb与myisam的区别

1.InnoDB支持事物,而MyISAM不支持事物2.InnoDB支持行级锁,而MyISAM支持表级锁3.InnoDB支持MVCC,
 
而MyISAM不支持4.InnoDB支持外键,而MyISAM不支持5.InnoDB不支持全文索引,而MyISAM支持。6.InnoDB不能通过直接拷贝表文件的方法拷贝表到另外一台机器,
 myisam 支持7.InnoDB表支持多种行格式, myisam 不支持8.InnoDB是索引组织表, myisam 是堆表

varchar和char的区别

在单字节字符集下,
 char( N) 在内部存储的时候总是定长, 而且没有变长字段长度列表中。 在多字节字符集下面, char(N)如果存储的字节数超过 N,那么
 char( N)将和 varchar( N)没有区别。在多字节字符集下面,如果存储的字节数少于 N,那么存储 N 个字节,后面补空格,补到 N
 字节长度。 都存储变长的数据和变长字段长度列表。 varchar(N)无论是什么字节字符集,都是变长的,即都存储变长数据和变长字段长度列表。

int(20)与int(11)有什么区别

20、11是指显示字符的长度不影响内部存储,只是影响带 zerofill 定义的 int 时,前面补多少个 0,易于报表展示

mysql事务隔离级别,并且每种级别都是解决什么问题

读未提交(read uncommitted) 存现脏读现象读已提交(read committed) 允许不可重复读,但不应许脏读可重复读(repeatable read) 脏读、不可重复读都不允许,允许幻读串行(serializable) 事务串行执行

数据库如何优化

SQL语句优化索引优化配置优化硬件优化根据实际情况说说

关键字