MySQL常见interview
mysql支持的存储引擎,以及各自区别 常用的有myisam,innodb,bdb myisam是mysql默认存储引擎: 不支持事务和外键,访问速度快,对事物完整性没有要求或者以select、insert为主的应用基本都可以使用这个引擎来创建表 innodb 存储引擎支持事务。对比myisam来说,处理效率差一些,并且会占用更多的磁盘空间以保留数据和索引,且支持外键约束 memory 使用存在内存中的内容来创建表。使用这种存储引擎,该库相当于缓存数据库,读写速度都很快。 mysql支持索引类型?配置主键索引? 普通索引 :仅加速查询 唯一索引 :加速查询 + 列值唯一(可以有null) 主键索引 :加速查询 + 列值唯一(不可以有null)+ 表中只有一个 组合索引 :多列值组成一个索引,专门用于组合搜索,其效率大于索引合并 全文索引 :对文本的内容进行分词,进行搜索 主键索引配置 mysql常见日志文件 错误日志、查询日志、慢查询日志、中继日志 innodb存储引擎的重做日志 :作用就是防止在发生故障的时间点,还有脏数据没有写入磁盘,mysql服务重启时,根据重做日志进行重做,达到事务的持久性。事务开始之后产生重做日志,对应事务的脏数据写入到磁盘之后,即释放对应的重做日志 二进制日志 :主从复制时,总库利用主库的binlog进行重复,实现主从同步;用于数据库基于时间点的还原