1. 查询所有数据库 表
USE information_schema; SELECT table_name, table_rows FROM TABLES WHERE TABLE_SCHEMA = 'longalicedb' ORDER BY table_rows DESC;
use information_schema;
select table_name,table_rows from tables
where TABLE_SCHEMA = 'longalicedb'
order by table_rows desc;
2. 慢查询
show variables like '%slow_query_log%'
#开启
set global slow_query_log=1;
重启无效 需修改
my.cnf
查询时间
show variables like '%slow_query_time%';
show variables like '%long_query_time%';
show variables like '%slow%';
show variables like '%log_queries_not_using_indexes%';
-s,是order的顺序,说明写的不够详细,俺用下来,包括看了代码,主要有
c,t,l,r和ac,at,al,ar,分别是按照query次数,时间,lock的时间和返回的记录数来排序,前面加了a的时倒叙
-t,是top n的意思,即为返回前面多少条的数据
-g,后边可以写一个正则匹配模式,大小写不敏感的
mysqldumpslow -s c -a -t 20 host-slow.log >>
mysqldumpslow -s r -t 20 host-slow.log
上述命令可以看出访问次数最多的20个sql语句和返回记录集最多的20个sql。
mysqldumpslow -t 10 -s t -g “left join” host-slow.log
这个是按照时间返回前10条里面含有左连接的sql语句。
先进入 /home/mysql/bin目录
在执行 mysqldumpslow -s c -t 20 ../data/mysql-slow.log
3. 下载
sz /home/mysql/data/mysql-slow.log
开启 没有使用索引
show variables like 'log_queries_not_using_indexes'
set global log_queries_not_using_indexes=1
4.缓存
4.1 show variables like 'query_cache%';
修改my.ini set query_cache_type=1
set query_cache_size=32M
4.2 查看缓存命中
show status like 'Qcache_hits';
4.3 Qcache相关
4.4 mysq 安装目录
select @@basedir;
select @@datadir;
my.ini
4.5 mysql 重启 (windows环境)
net stop mysql
net start mysql (如果不是以系统管理元打开命令窗口 则无法启动)
5. 查看cpu信息
cat /proc/cpuinfo
6.mysqldump
mysqldump -h 10.152.12.108 -uroot -pxxxxx longalicedb stats_kpi --where=" date between '2016-10-01'and '2016-10-31'" > /home/mysql_backup/stats_kpi_before.sql
7. delete data from bigtable
https://dev.mysql.com/doc/refman/5.7/en/delete.html
1. copy : create table stats_kpi_copy like stats_kpi
2. insert insert into stats_kpi_copy select * from stats_kpi where date >='2017-03-01'
select count(1) from stats_kpi_copy
3 rename rename TABLE stats_kpi to stats_kpi_old , stats_kpi_copy to stats_kpi
4. delete drop table stats_kpi_old
8. download
wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz
9. replace 使用
update pf_app set domain=replace(domain,'cs30.net','AIHELP.NET');
10. rownum 使用
select @rownum:=@rownum+1 as rownum from (select @rownum:=0) r;