20道经典面试题及SQL注入、幻读、索引、临时表等相关问题解答和参考答案整理
- SQL注入式攻击是指攻击者通过构造特制的SQL查询语句,使得数据库执行非预期的操作,如插入、删除、修改等。2. 幻读是在一个事务内,在多次重复执行同一个查询时,不同的结果集行数不一致而导致的现象。在读未提交、读提交和可重复读的隔离级别下都会出现幻读,只有串行化隔离级别可以完全避免。3. 加载数据较慢的情况下,可采用分批次加载或者优化查询语句等方式来解决。4. MySQL的主从复制原理是通过将一个MySQL实例配置成主服务器,然后将另一些MySQL实例配置成从服务器,将主服务器的更新、修改、删除、插入等操作同步到各个从服务器上。主从延迟的原因包括网络延迟、硬件配置和复制规则等。5. 索引并不一定能提高查询的性能,因为索引会占用存储空间和增加维护成本,同时不恰当的索引也可能会导致查询性能下降。6. 最左前缀原则是指查询条件中,以联合索引的前缀为开头的索引才能起到作用;最左匹配原则是指查询条件中,对联合索引的所有列都必须按照对应索引列的次序全部匹配才能利用该联合索引。7. 临时表是一类临时性存储在内存或者文件系统中的数据表,用于存储计算结果等临时性数据。删除临时表的时间可以根据具体业务需求或者系统资源状况进行调整。8. 使用union和union all时需要注意的问题包括两者的区别和使用场景、选择合适的表结构、考虑排序和分页的影响等。
下载地址
用户评论