美文网首页
最近在看mysql 记录了一些东西 有需要的可以看下

最近在看mysql 记录了一些东西 有需要的可以看下

作者: numlock272 | 来源:发表于2019-05-28 16:46 被阅读0次

mysql篇

1:mysql数据库优化

1):表涉及要合理(符合3NF 3范式)

1NF:表中的记录具有原子性即每列不可再拆分

2NF:表中的记录要是唯一的不能存在多条一模一样的数据 通常涉及主键保证唯一

3NF:表中不要存在冗余数据即可以由一个字段推到出另一个字段

2):添加适当的索引(index)(普通索引、主键索引、唯一索引、全文索引)

3):分表技术(水平分割、垂直分割)

4):读写分离

5):存储过程(模块化编程可以提高速度  因为预先编译好的sql,但不利于管理)

6):对mysql配置优化(配置最大并发数my.ini、调整缓存大小)

7):mysql服务器硬件升级

8):定时清除不需要的数据,定时进行碎片整理(MYISAM引擎)

9):sql语句优化

2:mysql 存储引擎

show engines; 显示mysql支持的存储引擎

MyISAM              1、不支持事物处理  不支持外键

2、查询和添加的效率很高

3、碎片很多

4、表锁 锁住的是整个表 效率高

5、支持全文索引

optimize table tablename;进行碎片处理

常用  论坛

innodb 1、支持事物

2、行锁  锁住的是一行 更细度

用来保存比较重要的数据

memory 数据频繁改动、而且不需要在数据库中永久保存

session入库

3:mysql慢查询

show status;

常用

show status like 'uptime';

show status like 'com_select';

show status like 'com_insert';

show status like 'connections';查看连接数

show status like 'slow_queries';显示慢查询次数

show [session|global] status like 'com_insert'; 默认不写是session  想看mysql启动至现在的情况使用global

show variables like 'long_query_time';显示当前慢查询时间

set long_query_time=1;修改慢查询时间单位 秒  默认10秒

安全模式 慢查询启动

设置方法

方法一:全局变量设置

将 slow_query_log 全局变量设置为“ON”状态

mysql> set global slow_query_log='ON';

设置慢查询日志存放的位置

mysql> set global slow_query_log_file='/usr/local/mysql/data/slow.log';

查询超过1秒就记录

mysql> set global long_query_time=1;

方法二:配置文件设置

修改配置文件my.cnf,在[mysqld]下的下方加入

[mysqld]

slow_query_log = ON

slow_query_log_file = /usr/local/mysql/data/slow.log

long_query_time = 1

3.重启MySQL服务

service mysqld restart

4:mysql 索引的代价

1:占用磁盘空间

2:对dml操作有影响  变慢

频繁的作为查询条件的字段应该建索引

唯一性太差的不适合建索引  如男女

频繁更新的字段不适合建索引

不出现在where后面的不适合建索引

相关文章

  • 最近在看mysql 记录了一些东西 有需要的可以看下

    mysql篇 1:mysql数据库优化 1):表涉及要合理(符合3NF 3范式) 1NF:表中的记录具有原子性即每...

  • Vue Router 试探

    在这篇记一次VUE开发环境搭建文章中我记录了一些Vue开发环境搭建的东西,最近接触了一些关于Router的内容,在...

  • Vue一个案例引发的动态组件与全局事件绑定总结

    最近在自学 Vue 也了解了一些基本用法,也记录了一些笔记有兴趣的朋友可以去查看我的其他文章,技术这东西真的不能光...

  • Interceptor+defaultPointcutAdvis

    最近在看springboot的@EnableAsync的源码,发现还是需要提前看一些东西,比如这次的MethodI...

  • Explain详解

    最近在看mysql 优化,可以用Explain 关键字来查看select sql 的执行计划。 mysql> ex...

  • canal源码解析(1)—HA模式的实现

    最近在看canal源码,有一些疑问。比如canal的HA模式是怎么实现的,mysql dump的位点又是怎么确定的...

  • 最近一周在看的东西

    最近在看一个人的微信文章,觉得宏大的历史观、丰富的政治和经济知识积累,正确的价值观,一副悲天悯人的情怀,才是一个读...

  • Python初学(二)

    上一章讲了学习Python需要知道的一些东西,当然也不需要记住,只要懂了就好。不知道的可以看下Python初学(一...

  • 跟着老友记学英文-S0102

    在看了一些剧之后,决定利用老友记来学点口语化的东西,主要是第一遍无字幕看剧;第二遍开字幕看剧,过程当中记录了不认识...

  • 该来的还是来了

    最近一直在看一些成语故事,便通过日更的形式发上来。一是在解决自己日更的同时还能学点东西,二是可以提供给有需要的人。...

网友评论

      本文标题:最近在看mysql 记录了一些东西 有需要的可以看下

      本文链接:https://www.haomeiwen.com/subject/xcgdtctx.html