MySql简答题

Posted wyju

tags:

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

mysql的优化

1.sql语句以及索引的优化

(1)索引的优化
(1.1)对于表80%以上都是读的操作,可以创建索引多一些,但是不能超过五个,一般是3个左右,特别是对那种个别更新频繁的表,不能创建太多索引。过多的索引不但增加其占用的磁盘空间,也增加了SQL Server 维护索引的开销。
(1.2)定义有主键的列要建立索引
(1.3)定义有外键的列要建立索引
(1.4)经常查询的列建立索引
(1.5)经常出现在关键字order by、group by、distinct后面的字段,建立索引。如果建立的是复合索引,索引的字段顺序要和这些关键字后面的字段顺序一致,否则索引不会被使用。
(1.6) 对于经常存取的列避免建立索引
(2)sql语句的优化
(2.1)尽量少使用like模糊查询,如果必要使用,尽量避免前面有%。因为会走全表查询
(2.2)在where子句中使用 != 或 <>操作符,索引将被放弃使用,会进行全表查询。我们可以使用betwwen and代替
(2.3)在where子句中使用 IS NULL 或 IS NOT NULL 判断,索引将被放弃使用,会进行全表查询。我们可以把数据null编程0,条件是num=0,就可以了
(2.4)很多时候使用union all 或 nuin(必要的时候)的方式替换“or”会得到更好的效果。where子句中使用了or,索引将被放弃使用。
(2.5)left join替换in
(2.6)尽量用 union all 替换 union。union all不会进行去重,union去重效率比较慢
(2.7)不适用内连接,尽量使用外连接。左外连接和右外连接的使用要考虑表数据

2.数据库表结构的优化

选取最适用的字段属性,尽可能减少定义字段宽度,尽量把字段设置NOTNULL
使用连接(JOIN)来代替子查询
适用联合(UNION)来代替手动创建的临时表

3.系统配置的优化

4.硬件的优化

优化链接最全

https://www.cnblogs.com/lijiasnong/p/9963905.html

数据库再执行的时候怎么创建索引

删除重新创建
mysql中没有真正意义上的修改索引,只有先删除之后在创建新的索引才可以达到修改的目的,原因是mysq在创建索引时会对字段建立关系长度等,只有删除之后创建新的索引才能创建新的关系保证索引的正确性;

:将login_name_index索引修改为单唯一索引;
1| DROP INDEX login name_index ON 'user';
2 ALTER TABLE user. ADD UNIQUE login_name_index(login name ):

以上是关于MySql简答题的主要内容,如果未能解决你的问题,请参考以下文章

Java项目:在线考试系统(单选,多选,判断,填空,简答题)(java+Springboot+ssm+mysql+html+maven)

C笔试题之简答题

英美概况的简答题

JAVA考试简答题

机器学习 简答题 速记

oracle数据库考试简答题,请回答一下吧,三个都回答了才会给分哦