MySQL查询缓存与数据库管理

上一篇 /

下一篇  2010-01-25 21:51:07

/ 个人分类:MYSQL/Cache

MySQL查询缓存

注意:查询缓存绝不返回过期数据。

如果一个表发生的改变(insert,update,delect,truncate,alter或drop table|database),那么所有这张表使用的缓冲的查询将被得失效,并从缓存中移除。

如果一个查询包括下面的函数,它将不能被缓存。

user-defined functions   connection_id   found_rows   get_lock   release_lock

load_file   master_pos_wait   now   sysdate   current_timestamp    curdate

current_date   curtime   current_time   database   encrypt  last_insert_id

rand   unix_timestamp   user   benchmark

查询缓存选项 select @@query_cache_type;

select sql_cache[选项on/off]

select sql_no_cache id,name from customer;

系统变量have_query_cache表示查询缓存是否可用。

show variables like ‘have_query_cache’;

系统查询query_cache_size表示查询缓存的大小。如果设置它为0,查询缓存将被禁止(缺省值为0)。

select @@global.query_cache_size;

若启用查询缓存,则系统变量query_cache_type表示查询缓存工作方式,他可以设置成如下值:

0(off,不缓存结果)

1(on,缓存所有的结果,除了select sql_no_cache… 查询)

2(demand,仅缓存select sql_cache… 查询)

用户可以禁止查询缓存;

set session query_cache_type=off;

若查询结果很大,缓存吗?

系统变量query_cache_limit控制可以缓存的查询结果的最大值,不缓存大于这个值的结果(缺省为1M)。

碎片整理

使用flush query cache命令,你可以整理查询缓存,以更好的利用它的内存。这个命令不会从缓存中移除任何查询。

清除cache

seset query cache命令从查询缓存中移除所有的查询结果。

flush tables也会清除查询缓存。

我们可以使用show status来监视查询缓存性能。

show status like ‘qcache%’;

变量                           含义

Qcache_queries_in_cache        搜索缓存中结果集的查询数目

Qcache_inserts                 被加入到缓存中的查询数目

Qcache_hits                    缓存命令数目

Qcache_lowmem_prunes           因为缺少内存而被从缓存中删除的查询数目

Qcache_not_cached              没有被缓存的查询结果数目(不能被缓存的,或由于

Query_cache_type)

Qcache_free_memory             查询缓存的空闲内存总数

Qcache_free_blocks             查询缓存的空闲内存块的数目

Qcache_total_blocks            查询缓存中的块的总数目

--------------------------------------------

MySQL 数据库管理

MySQL数据库管理

MySQL启动/停止/测试

添加用户

增加一个用户test_user密码为123,让他可以在任何主机上登陆,并对所有数据库有查询、插入、修改、删除的权限。

grant select,insert,update,delete on *.* to ‘test_user’@ ‘%’ identified by

‘123’;

增加一个用户test_user2密码123,让他只可以在localhost上登陆,并可以对数据库test进行查询、插入、修改、删除的操作(localhost指本地主机,即MySQL数据库所在的那台主机),这样用户即使知道test_user2的密码,他也无法从Internet上直接访问数据库,只能通过MySQL主机上的web页来访问了。

grant select,insert,update,delete on test.* to ‘test_user2’@ ‘localhost’ identfied by ‘123’;

创建一个本地的完全的超级用户admin,口令 ‘123’

grant all privileges on *.* to admin@localhost identified by ‘123’ with grant option ;

删除用户

revoke all on *.* from ‘test_user’@localhost;

delete from user where user= ‘test_user’;

flush privileges;

删除匿名用户

mysql mysql

delete from user where host= ‘localhost’ and user= ‘’;

flush privileges;#刷新内存授权表

修改密码

mysqladmin –u用户名 –p旧密码password新密码

给root加个密码123,再修改密码为456

mysqladmin –uroot password 123

mysqladmin –uroot –p123 password 456

mysql –u root –p

set password for root =password(“456”);

update user set password =password(‘456’) where user= ‘root’;

flush privileges;

清除密码

mysqladmin –uroot –p456 password ‘’;

优化

optimize table 表1,表2…

对含有varchar,blob或text列的表(记录行长度可变)有用。

MySQL数据库备份与优化

导入

load data infile ‘/tmp/teacher.txt’into table teacher;

或 mysqlimport school /tmp/teacher.txt;

逻辑备份

将数据库school中的表全部备份到school_2004_9.sql文本文件

mysqldump –-opt school > school_2004_9.sql

仅备份数据库school中的一部分表teacher和student

mysqldump –-opt school teacher student >school_teacher_student_2004_9.sql

备份多个数据库

mysqldump –-databases school tset >school_test_2004_9.sql

恢复

将数据库school不慎破坏,从school_2004_9.sql备份文件中恢复数据

creat database school;

use school;

source school_2004_9.sql#恢复

恢复表teacher和student

use school;

soure school_teacher_student_2004_9.sql

恢复多个数据库

souce school_test_2004_9.sql

TAG:

我来说两句

显示全部

内容

昵称

验证

提交评论

mysql数据库查询缓存_MySQL查询缓存与数据库管理相关推荐

  1. mysql数据库出现缓慢_MySQL查询缓慢的N种原因,以及N+1种解决方法

    昨天查询数据库的时还正常,今早来上班时,SQL语句查询就突然变得很慢了.这样的情况我相信你一定遇到过. 下面就让小编来带你了解其中的原因吧! 本篇文章简单总结了一下可能导致数据库查询慢的原因,希望能给 ...

  2. mysql 数据库生命周期_MySQL查询的生命周期

    当你执行一次MySQL查询时,有没有仔细想过,在查询结果返回之前,经过了哪些步骤呢?这些步骤有可能消耗了超出想象的时间和资源.因此,在对MySQL的查询进行优化之前,应该了解一下MySQL查询的生命周 ...

  3. mysql数据库 查找数据类型_Mysql查询数据库表结构以及字段类型并展示

    1.建表语句sys_user CREATE TABLE `sys_user` ( `id` varchar(32) NOT NULL COMMENT '编号', `dept_id` varchar(3 ...

  4. MySQL数据库应用 多表查询_mysql数据库-多表查询

    今日任务 完成对MYSQL数据库的多表查询及建表的操作 教学目标 掌握MYSQL中多表的创建及多表的查询 掌握MYSQL中的表关系分析并能正确建表 昨天内容回顾: ​ 数据库的创建 : create ...

  5. mysql 一周一月_mysql查询当天、本周,本月,上一个月的数据

    今天 select * from 表名 where to_days(时间字段名) = to_days(now()); 昨天 SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ...

  6. kettle 查询数据库写入文件_怎么连接数据库-详解如何用kettle连接mysql数据库并导出sql查询结果...

    概述 今天主要介绍下kettle怎么去连接mysql数据库及导出sql查询结果. 1.数据库链接驱动 如果没有安装对应的数据库驱动,在数据库连接的过程中,可能会报某个数据库连接找不到的异常,因此需要下 ...

  7. mysql日志查询指令_MySQL查询日志总结

    MySQL查询日志介绍 MySQL的查询日志记录了所有MySQL数据库请求的信息.无论这些请求是否得到了正确的执行.默认文件名为hostname.log.默认情况下MySQL查询日志是关闭的.生产环境 ...

  8. python查询mysql数据库_python针对mysql数据库的连接、查询、更新、删除操作示例...

    本文实例讲述了python针对mysql数据库的连接.查询.更新.删除操作.分享给大家供大家参考,具体如下: 连接 一 代码 import pymysql # 打开数据库连接 db = pymysql ...

  9. java JDBC连接MySQL数据库调用存储过程进行查询

    java JDBC连接MySQL数据库调用存储过程进行查询 主程序代码 工具类 文件信息 存储过程 结果截图 主程序代码 package Mysql;import util.JDBCUtils; im ...

  10. mysql数据库中查询第几条到第几条数据_在 mysql 数据库中,从查询结果的第四条记录开始选取5条记录,下面 sql 语句正确的是( )...

    [单选题]同一种货物,在同一线路上或平行线路上作相对方向的运送,而与对方运程的全部或一部分发生重迭交错的运输被称为( ). [多选题]水闸一般由()三部分组成 [单选题]在一个常规的统计表内,非必需包 ...

最新文章

  1. sublime python配置_sublime python环境配置
  2. python点的作用-Python中*和**的作用(课堂小结)
  3. pycharm 中写代码的提示的前符号 p,m ,c,v, f 是什么意思
  4. Splay(单点修改+查询)
  5. Kruskal HDOJ 4313 Matrix
  6. spark mllib源码分析之随机森林(Random Forest)
  7. kail中tools的安装和第一个php学习笔记
  8. 实战系列-分布式缓存
  9. 宝新金融首席经济学家:区块链应用主要方向开始转向实体经济领域的商业场景
  10. delphi接口带上请求头是什么意思_Gin框架中使用JWT进行接口验证
  11. C语言基础专题 - 通过案例历学 - 结构体
  12. 案例7-2 寻找大富翁 (25 分)(STL容器)
  13. 看了有多个人格的人,自己拍的视频
  14. apache 的 配置项
  15. Pytorch极简入门教程(十六)——预训练网络ResNet101微调
  16. 计算机网络试卷北理珠,北理工97级计算机网络终考试卷
  17. WPS文字标题级别的设置和调整——多种方法任选
  18. 用python祝男朋友生日快乐_祝男朋友生日快乐的说说50句
  19. html页脚固定,jQuery实现页脚永远固定在页面底部
  20. 使用Fiddler对手机APP抓包渗透测试实战

热门文章

  1. 微服务追踪系统,你绝对想不到!
  2. 到底选择PostgreSOL还是MySQL?看这里!
  3. Leangoo敏捷工具如何升级至企业版
  4. 俞军谈产品经理的选人、用人、育人与留人
  5. 关于MVC与三层架构、个人总结网上杂七杂八得出的最终成果、asp.net (core) MVC、JavaWeb的MVC
  6. String、StringBuffer、StringBuilder三者的异同
  7. html完成横纵坐标位置确定,2018-2019学年安徽省合肥市七年级下期中数学试卷-附详细答案...
  8. java界面设计素材_9.java图形用户界面设计.ppt
  9. 重磅直播|激光雷达在高精地图中的应用
  10. LiDAR-Camera Fusion for 3D Reconstruction