java面试题-简单描述mysql相关问题

Posted weixin_40228600

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java面试题-简单描述mysql相关问题相关的知识,希望对你有一定的参考价值。

一、mysql中drop、delete与truncate的区别
Drop通常删除整张表;delete通常删除部分数据;truncate通常删除表中所有记录。

二、Union与Union All的区别
Union合并重复的记录,Union All则不会,Union执行效率率高些。

三、MYSQL中sql语句的执行生命周期
1、应用服务器与数据库建立连接
2、数据库进程拿到请求中的sql语句
3、通过编译解析执行语句
4、在内存中进行逻辑处理
5、将得到处理的数据发送给应用服务器
6、关闭数据库连接,释放资源

四、数据表内容比较多时,怎么优化查询
1、增加缓存redis、memcached,将经常用到的查询数据放到缓存中
2、采用主从读写分离技术,将读写的数据放到不同数据库中或不同数据表中
3、垂直拆分或水平拆分,将业务多的内容拆分成多个子模块处理

五、为什么尽量要在表中设定主键
主键是表中唯一键,也是确定数据行唯一性的保障,这可以在操作表中数据提高增加、删除、修改、查询执行效率。

六、为什么在表字段中建议设置属性值not null
Null值在表中会暂用字节空间,而且在程序访问中,也可能带来预期不符的问题。
七、主键自增ID和UUID设置区别
自增ID因为是按照内存顺序插入的,不断向后排列,在执行语句上比UUID快些,但UUID优点就是可以超过自增ID长度值。

以上是关于java面试题-简单描述mysql相关问题的主要内容,如果未能解决你的问题,请参考以下文章

Java相关面试题总结

Java开发面试书籍,java容器面试题

Java阿里等大厂面试题汇总,值得收藏!

java程序设计精编教程第三版总结,附相关架构及资料

Java面试技巧之MySQL问题梳理

剑指offer编程题Java实现——面试题12相关题大数的加法减法乘法问题的实现