mysql优化: 1.表的设计合理化,需要符合三范式 2.添加适当索引(Index),有四种:普通索引、主键索引、唯一索引、全文索引 3.分表技术(水平分割、垂直分割) 4.读写分离 5.存储过程(模块化编程,可提高速度) 6.对mysql配置优化 a.配置最大并发数,修改my.ini文件里的max_connections值,一般网站为1000左右值即可。 b.调整缓存大小 7.mysql服务器硬件升级 8.定时的清除不需要的数据,定时进行碎片整理(MyISAM)
设计什么样的表才符合三范式?
表的范式,首先符合1范式,才能满足2范式,进一步满足3范式。
1.范式:即表的列,不可再分解,即列的信息,具有原子性不能分解,只要数据库是关系型数据库,就自动满足1范式。
2.范式:表中的记录是唯一的,就满足2范式。(设计主键即可满足,主键不含业务逻辑,自增的,比较稳定)
3.范式:即表中不要有冗余数据(表的信息,若能被推导出来,就不应该单独设计一个字段来存放).
但没有冗余的数据库未必是最好的数据库,所以在1对多的情况下,根据业务需求,可以适当添加冗余字段,提高效率。
如何添加索引?
#创建普通索引 create index indexName on emp(ename); #创建唯一索引 create unique index indexName1 on emp(id); #创建主键索引 alter table emp add primary key (id); #创建全文索引 alter table emp add fulltext indexName1 (ename); #删除索引 drop index indexName on emp; #显示索引信息 show index from emp;