随笔分类 - 【技术专区-MySQL】
摘要:前提背景 MySQL关是一种关系数据库管理系统,所使用的 SQL 语言是用于访问数据库的最常用的标准化语言,其特点为体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,在 Web应用方面 MySQL 是最好的 RDBMS(Relational Database Management System
阅读全文
摘要:MySQL的主从复制 一般在大规模的项目上,都是使用MySQL的复制功能来创建MySQL的主从集群的。 主要是可以通过为数据库服务器配置一个或多个备库的方式来进行数据同步。 复制的功能不仅有利于构建高性能应用,同时也是高可用、可扩展性、灾难恢复、备份以及数据仓库等工作的基础。 通过MySQL的主从复
阅读全文
摘要:1. change buffer 可以看做是Insert buffer升级版,当需要插入或更新一个数据页时,对于非聚簇索引,如果该数据页不在内存当中,Innodb在不影响 一致性的前提下,会将更新操作缓存在change buffer中,可以省去从磁盘读取该页的操作,在以一定的频率和情况下与索引页进行
阅读全文
摘要:MySQL那些事 学习任何技术,首先我们要知道怎么用,熟练之后再探究其原理,最后再根据业务进行优化。 ——船长 MySQL的索引有哪些? 主键索引:表的主键列会默认添加索引,索引中保存了该行记录的所有数据唯一索引(upique):该列的所有值必须唯一普通索引(normal):普通列的一种索引聚合索引
阅读全文
摘要:首先,我们先来看看一次查询/更新语句流程图 本文会将重点放在执行器<->存储引擎之间的交互。 mysql不是每次数据更改都立刻写到磁盘,而是会先将修改后的结果暂存在内存中,当一段时间后,再一次性将多个修改写到磁盘上,减少磁盘io成本,同时提高操作速度。 MySQL通过WAL(write-ahead
阅读全文
摘要:1.对于mysql,不推荐使用子查询和join是因为本身join的效率就是硬伤,一旦数据量很大效率就很难保证,强烈推荐分别根据索引 单表取数据,然后在程序里面做join,merge数据。 2.子查询就更别用了,效率太差,执行子查询时,MYSQL需要创建临时表,查询完毕后再删除这些临时表,所以,子查询
阅读全文
摘要:优化简介 MySQL数据库优化是多方面的,原则是减少系统的瓶颈,减少资源的占用,增加系统的反应速度。 在MySQL中,可以通过SHOW STATUS 语句查询一些MySQL的性能参数。如查询连接次数,可以执行如下语句: SHOW STATUS LIKE 'Connections'; 如果要查询慢查询
阅读全文
摘要:(七)表的优化 1. 选择合适的数据引擎 MyISAM:适用于大量的读操作的表 InnoDB:适用于大量的写读作的表 2.选择合适的列类型 使用 SELECT * FROM TB_TEST PROCEDURE ANALYSE()可以对这个表的每一个字段进行分析,给出优化列类型建议 3.对于不保存NU
阅读全文
摘要:MySql只支持Union(并集)集合运算,好像也是4.0以后才有的; 但是对于交集Intersect、差集Except,就没有实现了。 一般的解决方案用in和not in来解决,小量数据还可以,但数据量大了效率就很低了。 其实,可以使用Union来实现另外两种的运算,当然是没有办法的办法。 差集E
阅读全文
摘要:登入root账户 mysql -u root -p 查看所有用户 select host,user from mysql.user; 查看某个用户的权限: show grants for username@host; #用户名@主机 示例: show grants for root@localhos
阅读全文
摘要:前言 学习mysql数据库,对于它的权限的管理是关键的一环。所以,下面介绍的是MySQL权限的管理。 MySQL权限表 MySQL数据库实际上是通过将用户写入mysql库中对应的权限表来控制访问权限的。 权限表分别为: user,db,table_priv,columns_priv和host。 us
阅读全文