知识点十五:MySQL 的应用程序优化(32)

  一、访问数据库采用连接池

      把连接当做对象或设备,统一放在‘连接池’里。凡是需要访问数据库的地方都从连接池里取连接

  二、采用缓存减少对于MySQL的访问:

          SHOW VARIBALES LIKE '变量名';

      1.避免对同一数据做重复检索

        have_query_cache:表明服务器在安装时是否已经配置了高速缓存
        query_cache_size:表明缓存区大小
        query_cache_type:0/off = 缓存关闭,1/on = 缓存打开(使用sql_no_cache的select除外),2/demand(只有带sql_cache的select语句提供高速缓存

      2.使用查询缓存

      3.C存参数的配置

        query_cache_type:是否打开
          OFF:关闭;ON:总是打开;DEMAND:只有明确了SQL_CHCHE的查询才会吸入缓存
        query_cache_size:缓存使用的总是内存的大小,单位是字节,这个值必须是1024的整数倍,否则MySQL实际分配可能跟这个值不同(感觉这个应该跟文件系统的BLOCK大小有关)
        query_cache_min_res_unit:分配内存块时的最小单位大小
        query_cache_limit:MySQL能够缓存的最大结果,如果超出,则增加Qcache_not_cached的值,并删除查询结果
        query_cache_wlock_invalidata:如果某个数据表被锁住,是否仍然从缓存中返回数据,默认OFF,表示仍然可以返回。

          show variables like '%query_cache%';  

      4.使用show status命令,监视查询缓存使用:

        qcache_queries_in_cache:在缓存中已注册的查询数目
        qcache_inserts:被加入到缓存中的查询数目
        qcache_his:缓存采样数目
        qcache_lowmem_prunes:因为缺少内存而被从缓存中删除的查询数目 
        qcache_not_cached:没有被缓存的查询数目 
        qcache_free_memory:查询缓存的空间内存总数
        qcache_free_blocks:查询缓存的空闲内存块数目 
        qcache_total_blocks:查询缓存的块的总数目

  三、使用负载均衡:

      一个主MySQL服务器(Master)于多个从属性MySQL服务器(Slave)建立复制(replication)连接,主服务器与从服务器实现一定程度上的数据同步,多个从属服务器存储相同的数据副本,实现
        数据冗余,提供容错功能。部署开发应用系统时,对数据库操作代码进行优化,将写入操作(如UPDATE、INSERT)定向到主服务器,把大量的查询操作(SELECT)定向到从属服务器,实现
        集群的负载均衡功能。

      如果服务器发生故障,从属服务器将转换角色成为主服务器,使应用系统为终端用户提供不间断的网络服务,主服务器恢复运行后,将其转换成从属服务器,存储数据库副本,继续对终端
        用户提供数据查询检索服务。

MYSQL进阶学习笔记十四:MySQL 应用程序优化!(视频序号:进阶_32)的更多相关文章

  1. MySQL高级学习笔记(四):索引优化分析

    文章目录 性能下降 SQL慢 执行时间长 等待时间长 查询语句写的烂 查询数据过多 关联了太多的表,太多join 没有利用到索引 单值 复合 服务器调优及各个参数设置(缓冲.线程数等)(不重要DBA的 ...

  2. MYSQL进阶学习笔记十:MySQL慢查询!(视频序号:进阶_23-24)

    知识点十一:MySQL 慢查询的应用(23) 一.慢查询定义 MySQL记录下查询超过指定时间的语句,我们将超过指定时间的SQL语句查询称为慢查询. 查看时间限制 show variables lik ...

  3. MYSQL初级学习笔记五:连接查询!(视频序号:初级_37-41)

    知识点七:连接查询(37-41) 什么是连接查询: 连接查询是将两个或两个以上的表按某个条件连接起来,从中选取需要的数据.连接查询是同时查询两个或两个以上的表时使用的.当不同的表中存在相同意义的字段时 ...

  4. Oracle学习笔记十四 内置程序包

    扩展数据库的功能 为 PL/SQL 提供对 SQL 功能的访问 用户 SYS 拥有所有程序包 是公有同义词 可以由任何用户访问 一些内置程序包 程序包名称 说明 STANDARD和DBMS_STAND ...

  5. MYSQL初级学习笔记六:子查询!(视频序号:初级_42 | 43)

    知识点八:子查询(42) 什么是子查询: 子查询是将一个查询语句嵌套在另一个查询语句中.内层查询语句的查询结果,可以作为外层查询语句提供条件. 引发子查询的情况: 使用[NOT] IN 的子查询 -- ...

  6. python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例

    python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例 新浪爱彩双色球开奖数据URL:http://zst.aicai.com/ssq/openInfo/ 最终输出结果格 ...

  7. MYSQL进阶学习笔记十三:MySQL 内存优化!(视频序号:进阶_31)

    知识点十四:MySQL 内存的优化(31) 一.优化MySQL SERVER 7组后台进程: masterthread:主要负责将脏缓存页刷新到数据文件,执行purge操作,触发检查点,合并插入缓冲区 ...

  8. MYSQL进阶学习笔记九:MySQL事务的应用!(视频序号:进阶_21-22)

    知识点十:MySQL 事务的应用 (21-22) 为什么要引入事务: 为什么要引入事务这个技术呢?现在的很多软件都是多用户,多程序,多线程的.对同一表可能同时有很多人在用,为保持数据的一致性,所以提出 ...

  9. MYSQL进阶学习笔记八:MySQL MyISAM的表锁!(视频序号:进阶_18-20)

    知识点九:MySQL MyISAM表锁(共享读锁)(18) 为什么会有锁: 打个比方,我们到淘宝买一件商品,商品只有一件库存,这时候如果还有另外一个人也在买,那么如何解决是你买到还是另一个人买到的问题 ...

随机推荐

  1. CF768

    Codeforces Round #406 (Div. 1) A.Berzerk 考虑先手必胜态,一定是先手移动到某一个位置以后,这个位置是后手的必败态 考虑先手必败态,一定是无论先手如何移动,先手所 ...

  2. PyTorch学习笔记之Tensors 2

    Tensors的一些应用 ''' Tensors和numpy中的ndarrays较为相似, 因此Tensor也能够使用GPU来加速运算 ''' # from _future_ import print ...

  3. app 检查更新和更新

    第一种,手动检查 ////  Harpy.h//  Harpy////  Created by Arthur Ariel Sabintsev on 11/14/12.//  Copyright (c) ...

  4. 记Weblogic采用RAC方式链接数据库遇到的问题

      前几天,去客户现场部署系统,WEBLOGIC连接数据库使用RAC方式连接,好几个人弄了一下午愣是没搞定,总是报SID错误 开始一致认为是防火墙的原因,后来SSH登陆应用服务器后,再TELNET数据 ...

  5. chm 转 pdf 工具推荐与对比

    在进行推荐chm转pdf的软件之前,首先来了解一下为什么我们要将chm转为pdf. CHM是英语“Compiled Help Manual”的简写,即“已编译的帮助文件”.CHM是微软新一代的帮助文件 ...

  6. [反汇编练习] 160个CrackMe之032

    [反汇编练习] 160个CrackMe之032. 本系列文章的目的是从一个没有任何经验的新手的角度(其实就是我自己),一步步尝试将160个CrackMe全部破解,如果可以,通过任何方式写出一个类似于注 ...

  7. utuntu16.04安装tensorflow1.4-gpu

    之前一直在windows下使用tensorflow,对cpu和gpu的安装都是比较顺利,都是使用anaconda环境下,创建虚拟conda环境,这样方便不同python版本的管理. 一直也想尝试使用u ...

  8. OpenCV入门笔记(一) Linux下的安装

    关于OpenCV,有中文的官方站点.里面翻译了官网的教程和API等.中文官方Tutorials见这里:[Tutorials] 一.Ubuntu下的安装 能够选择直接从库里安装,或者手动编译安装,请參考 ...

  9. UDP用户数据报协议和IP分组

    UDP总体的封装格式例如以下: 以下是8字节UDP首部: 当IP层依据协议字段把UDP报文向上传送到UDP模块后,UDP模块再依据port号将数据发送到对应的进程中,以此实现进程到进程间的通信. 16 ...

  10. 2014年8月25日,收藏家和杀手——面向对象的C++和C(一)

    近期事情特别多,睡眠也都非常晚,有点精神和身体混乱的感觉,所以想写写技术分析文章.让两者的我都调整一下.这篇技术分析文章是一直想写的,当前仅仅是开篇,有感觉的时候就写写,属于拼凑而成,兴许的篇章没有时 ...