mysql数据库查询缓存_MySQL查询缓存与数据库管理
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查询缓存与数据库管理相关推荐
- mysql数据库出现缓慢_MySQL查询缓慢的N种原因,以及N+1种解决方法
昨天查询数据库的时还正常,今早来上班时,SQL语句查询就突然变得很慢了.这样的情况我相信你一定遇到过. 下面就让小编来带你了解其中的原因吧! 本篇文章简单总结了一下可能导致数据库查询慢的原因,希望能给 ...
- mysql 数据库生命周期_MySQL查询的生命周期
当你执行一次MySQL查询时,有没有仔细想过,在查询结果返回之前,经过了哪些步骤呢?这些步骤有可能消耗了超出想象的时间和资源.因此,在对MySQL的查询进行优化之前,应该了解一下MySQL查询的生命周 ...
- mysql数据库 查找数据类型_Mysql查询数据库表结构以及字段类型并展示
1.建表语句sys_user CREATE TABLE `sys_user` ( `id` varchar(32) NOT NULL COMMENT '编号', `dept_id` varchar(3 ...
- MySQL数据库应用 多表查询_mysql数据库-多表查询
今日任务 完成对MYSQL数据库的多表查询及建表的操作 教学目标 掌握MYSQL中多表的创建及多表的查询 掌握MYSQL中的表关系分析并能正确建表 昨天内容回顾: 数据库的创建 : create ...
- mysql 一周一月_mysql查询当天、本周,本月,上一个月的数据
今天 select * from 表名 where to_days(时间字段名) = to_days(now()); 昨天 SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ...
- kettle 查询数据库写入文件_怎么连接数据库-详解如何用kettle连接mysql数据库并导出sql查询结果...
概述 今天主要介绍下kettle怎么去连接mysql数据库及导出sql查询结果. 1.数据库链接驱动 如果没有安装对应的数据库驱动,在数据库连接的过程中,可能会报某个数据库连接找不到的异常,因此需要下 ...
- mysql日志查询指令_MySQL查询日志总结
MySQL查询日志介绍 MySQL的查询日志记录了所有MySQL数据库请求的信息.无论这些请求是否得到了正确的执行.默认文件名为hostname.log.默认情况下MySQL查询日志是关闭的.生产环境 ...
- python查询mysql数据库_python针对mysql数据库的连接、查询、更新、删除操作示例...
本文实例讲述了python针对mysql数据库的连接.查询.更新.删除操作.分享给大家供大家参考,具体如下: 连接 一 代码 import pymysql # 打开数据库连接 db = pymysql ...
- java JDBC连接MySQL数据库调用存储过程进行查询
java JDBC连接MySQL数据库调用存储过程进行查询 主程序代码 工具类 文件信息 存储过程 结果截图 主程序代码 package Mysql;import util.JDBCUtils; im ...
- mysql数据库中查询第几条到第几条数据_在 mysql 数据库中,从查询结果的第四条记录开始选取5条记录,下面 sql 语句正确的是( )...
[单选题]同一种货物,在同一线路上或平行线路上作相对方向的运送,而与对方运程的全部或一部分发生重迭交错的运输被称为( ). [多选题]水闸一般由()三部分组成 [单选题]在一个常规的统计表内,非必需包 ...
最新文章
- sublime python配置_sublime python环境配置
- python点的作用-Python中*和**的作用(课堂小结)
- pycharm 中写代码的提示的前符号 p,m ,c,v, f 是什么意思
- Splay(单点修改+查询)
- Kruskal HDOJ 4313 Matrix
- spark mllib源码分析之随机森林(Random Forest)
- kail中tools的安装和第一个php学习笔记
- 实战系列-分布式缓存
- 宝新金融首席经济学家:区块链应用主要方向开始转向实体经济领域的商业场景
- delphi接口带上请求头是什么意思_Gin框架中使用JWT进行接口验证
- C语言基础专题 - 通过案例历学 - 结构体
- 案例7-2 寻找大富翁 (25 分)(STL容器)
- 看了有多个人格的人,自己拍的视频
- apache 的 配置项
- Pytorch极简入门教程(十六)——预训练网络ResNet101微调
- 计算机网络试卷北理珠,北理工97级计算机网络终考试卷
- WPS文字标题级别的设置和调整——多种方法任选
- 用python祝男朋友生日快乐_祝男朋友生日快乐的说说50句
- html页脚固定,jQuery实现页脚永远固定在页面底部
- 使用Fiddler对手机APP抓包渗透测试实战
热门文章
- 微服务追踪系统,你绝对想不到!
- 到底选择PostgreSOL还是MySQL?看这里!
- Leangoo敏捷工具如何升级至企业版
- 俞军谈产品经理的选人、用人、育人与留人
- 关于MVC与三层架构、个人总结网上杂七杂八得出的最终成果、asp.net (core) MVC、JavaWeb的MVC
- String、StringBuffer、StringBuilder三者的异同
- html完成横纵坐标位置确定,2018-2019学年安徽省合肥市七年级下期中数学试卷-附详细答案...
- java界面设计素材_9.java图形用户界面设计.ppt
- 重磅直播|激光雷达在高精地图中的应用
- LiDAR-Camera Fusion for 3D Reconstruction