
作者归档:杨龙
mongodb笔记:bin文件说明
bsondump 二进制导出
mongo 客户端
mongod 服务端
mongodump 整体数据库导出
mongoexport 导出人眼易识别的json文档或csv文档
mongofiles
mongorestore 数据库整体导入
mongos 路由器(分片使用)
mongotop 性能监控
log_queries_not_using_indexes 导致慢查询日志刷新太快
tail -f 查看慢查询日志的时候发现刷新很慢,而且时间不到一毫秒的查询也记录了,检查配置的时候发现设置的是2秒,以为没有生效,后来经朋友提示发现是开启了log_queries_not_using_indexes,记录没有使用索引的查询,关闭即可
set global log_queries_not_using_indexes = 'OFF';
Waiting for query cache lock
原文地址
http://250688049.blog.51cto.com/643101/1560425
Mysql InnoDB 引发 Waiting for query cache lock
标签:Mysql InnoDB Waiting
线上数据库中,如果是InnoDB的话,配备足够的innodb buffer pool后,就把query cache关闭掉(query_cache_size 和 query_cache_type 同时设置为 0),大量的更新+查询时,更容易引发 Waiting for query cache lock。
。。。
— show variables like ‘query_cache%’;
— set global query_cache_type=0;
— set global query_cache_size=0;
— show variables like ‘%slow%’;
pt-table-sync 修复同步数据一致问题
修复方向master向从库同步,由于是一主一从所以这个方向没问题,以master的数据为准:
pt-table-sync --print --execute h=master,D=database_name,t=table_name,u=root,p=password h=web3 --no-check-slave --lock=1 --charset=utf8mb4
参数格式
pt-table-sync DNS1 DNS2 DNS3
DNS1是源数据库
后面的都是目标数据库
DNS格式说明:D数据 u用户名 p密码 t表名
上面的例子只有一个目标数据修复单个表
也可以修复整个数据库:
pt-table-sync --print --execute h=master,D=database_name,u=root,p=password h=web3 --no-check-slave --lock=1 --database=database_name --charset=utf8mb4
–no-check-slave 主向从同步需要这个参数,否则只能从向主同步,因为如果有多个从库可能会导致新的不一致
–print 打印出来(实际运行时请去掉这参数 否则遇到特殊字符时会导致修复中断)
–execute 真的运行,去掉这个参数可以只预览
–charset=utf8mb4 设置字符串否则可能会乱码
–lock=1
1:循环锁,默认1000条一个周期,一个周期提交一次事物,建议使用这个锁类型不影响写入
否则数据量过大会导致锁检查过的表,默认是一次性提交