MySQL
文章平均质量分 70
惜暮
这个作者很懒,什么都没留下…
展开
-
MySQL远程连接Host 'XXX' is not allowed to connect to this MySQL server 解决方案
进入MySQL终端: GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘password’ WITH GRANT OPTION;是哪个面就是用于所有IP,以root用户, 密码是password 登录连接。然后刷新: flush privileges;原创 2017-03-22 14:12:21 · 4662 阅读 · 0 评论 -
[MySQL]--索引操作常见的SQL
这篇博文主要是做一些记录,关于MySQL中索引操作的一些常用命令的使用:1. 查看某个表的索引show index from table_name;show keys from table_name;2. 创建索引-- index_name可以省略, 创建普通索引ALTER TABLE table_name ADD INDEX index_name (column_list,column_li原创 2017-02-25 16:23:48 · 482 阅读 · 0 评论 -
[高性能MySQL]-创建高性能的索引
本文是关于创建索引的的内容: (1) 索引的类型 (2)索引的优点 (3)优化索引的策略这里给出一个索引的思维导图: 索引是存储引擎用于快速找到记录的一种数据结构。索引是对 查询性能优化 最有效的手段了,索引能够轻松将查询性能提升几个数量级。索引我们一般都是对某一列加索引。存储引擎先在索引中找到对应值,然后根据匹配的索引记录上的rowid找到对应的数据行。比如运行如下查询语句:原创 2017-02-25 00:19:59 · 833 阅读 · 0 评论 -
[高性能MySQL]-存储引擎MyISAM与InnoDB基本区别
这篇博文主要是总结关于MyISAM与InnoDB的区别InnoDB和MyISAM是使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定。基本的差别为: (1)MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持事务。(2)InnoDB支持数据行锁定;MyISAM不支持行锁定,只支持锁定整个表。这里需要注意的是InnoDB表的行锁也不是绝对的,假如在执行一个SQ原创 2017-02-24 20:33:49 · 411 阅读 · 0 评论 -
[高性能MySQL]-事务与隔离界别
本文主要包括一下内容: (1) 事务的概念与ACID (2)事务的隔离级别 (3)MySQL中的事务1. 事务与ACID理解事务是其它高级概念的基础。 事务:事务就是一组原子性的SQL查询,或则说是一个独立的执行单元,要么全部成功,要么全部失败,如果失败了就回滚到事务之前的状态。下面来理解一下数据库中关于ACID的概念:原子性、一致性、隔离性、持久性。 (1)原子性:事务原创 2017-02-24 20:17:18 · 957 阅读 · 0 评论 -
[高性能MySQL]--MySQL的架构与概念
1.MySQL的逻辑架构 最上面不是MySQL特有的,所有基于网络的C/S的网络应用程序都应该包括连接处理、认证、安全管理等。中间层是MySQL的核心,包括查询解析、分析、优化和缓存等。同时它还提供跨存储引擎的功能,包括存储过程、触发器和视图等。最下面是存储引擎,它负责存取数据。服务器通过storage engine API可以和各种存储引擎进行交互。1.1、查询优化和执行(Optimizatio原创 2017-02-20 09:34:04 · 515 阅读 · 0 评论 -
Linux/Mac下MySQL的安装配置
1.Linux下环境:ubuntu16.04 MySQL5.7安装步骤:1、首先检查系统是否安装了MySQL在系统终端输入:#netstat -tap | grep mysql 如果没有回显、显示已安装结果,则没有安装。若如下所示,则表示已经安装。 也可以通过命令#mysql -V 来获取版本号 2、安装MySQL1)在终端输入 #apt-get install mysql原创 2017-01-10 23:52:58 · 836 阅读 · 0 评论 -
[高性能MySQL]--查询缓存
简单点说,就是对于相同SQL可以跳过SQL解析和执行计划生成阶段,直接返回缓存的结果。也就是缓存完整的SELECT 查询结果。1. MySQL查询缓存:缓存存放在一个哈希表中,通过一个哈希值引用。哈希值包括:查询本身、当前查询数据库、客户端协议等等。 但是需要注意的是SQL语句的任何不同都会导致缓存命中失败(空格、注释、变量名不同)但是查询缓存也有严重的性能问题: (1)读查询之前必须检查是否命中原创 2017-02-28 13:38:58 · 620 阅读 · 0 评论 -
[高性能MySQL]-特定类型查询的优化
这一节主要是对于一些特定类型的优化查询: (1)count查询优化; (2)关联查询 (3)子查询 (4)GROUP BY 和 DISTINCT优化 (5)LIMIT 分页优化count查询优化COUNT()聚合函数的作用: (1)统计某一个列值的数量,也可以统计行数。需要注意的是统计列值时要求列值是非空的(不统计NULL)(2)统计结果集的行数。当列值不可能为空时原创 2017-02-28 11:33:39 · 645 阅读 · 0 评论 -
[MySQL]--查询性能分析工具-explain关键字
explain显示了MySQL如何使用索引来处理select语句以及连接表。可以帮助选择更好的索引和写出更优化的查询语句。explain的使用方法很简单,只需要在select查询语句前面加上explain关键字就行。下面给出一个实例:下面给出回显的数据的含义: (1)id:SELECT识别符,这是SELECT查询序列号。(2)select_type:select类型,它有以下几种...原创 2017-02-28 09:33:47 · 2885 阅读 · 3 评论 -
[MySQL]--查询性能优化
对于高性能数据库来说:库表结构优化、索引优化和查询优化需要齐头并进 1.为什么查询的速度会慢?查询其实就是一系列的子任务组成,优化查询实际上就是:要么消除一些子任务,要么减少子任务执行的次数。 2.慢查询基础:优化数据访问(1)是否向数据库请求了不需要的数据1)查询了不需要的数据: 比如我们通过select 查询出了大量的结果,获取前面的N行之后就关闭结果集,实际上MySQL会查询出所有的结果集原创 2017-02-28 00:45:10 · 502 阅读 · 0 评论 -
MySQL索引原理
MySQL索引原理本文将只关注于B Tree索引,因为这是平常使用MySQL时主要打交道的索引,至于哈希索引和全文索引本文暂不讨论。MySQL索引数据结构与算法分析我们建立索引,其实就是为了构建一种数据结构,可以在上面应用一种高效的查询算法,最终提高数据的查询速度。1. 索引的本质MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。提...原创 2017-11-24 10:41:50 · 1223 阅读 · 0 评论