Mysql常用命令(一)

      在MySQL日常维护过程中,熟练使用一些命令,能给日常维护工作带来很多便利,下面是我在MySQL维护过程中整理和收集的维护命令,希望能给大家帮助

        

1.设置命令行提示,这个很使用,防止在操作生产数据库时,在不停的切换之间迷失自己,造成生产事故

mysql -uroot -p --prompt="\\u@\\h:\\d \\r:\\m:\\s>"
在my.cnf配置文件里永久配置
prompt=mysql(\\u@\\h:\\d)>      

default-character-set=utf8 

下面是设置之后的展示效果


2.查看mysql加载my.cnf的顺序

/usr/sbin/mysqld --verbose --help|grep -A 1 'Default options'


3.查看软件版本

mysqladmin -uroot -proot version

或者使用以下方式

mysql -uroot -proot -e "select version()"


4.查看数据库表锁状态

show status like 'table%';


5.查看帮助文档

? contents;

? data types;

? int;

? show;

? create table;


6.查看索引信息

show index from emp \G;


7.tcpdump工具查找TPS突增问题

tcpdump -i eth0 -A -s 3000 port 3306 > sql.log
注意,我们在使用tcpdump的时候加了-A参数,这样就可以把sql语句都显示出来了

大约执行1分钟后,同时停止执行。这个时候,sql.log文件中已经包含了这段时间执行的所有sql语句。示例如下:

$grep 'update' ./sql.log | head
....5u.vD....update session_table set expire=’2014-12-12 20:01:23’ where sess_id = ‘demostring123’ limit 1
既然我们现在已经有了所有执行的sql语句,我们就可以很容易的通过使用grep, wc 等命令分析出是那些sql语句执行次数猛增了。


8.杀掉连接

select concat('KILL ',id,';') from information_schema.processlist where user='root';


9.查询正在执行的sql

mysqladmin pr -uroot -proot|grep -v -i sleep


10.查看索引的高度

SELECT b.name, a.name, index_id, type, a.space, a.PAGE_NO FROM information_schema.INNODB_SYS_INDEXES a,information_schema.INNODB_SYS_TABLES b WHERE a.table_id = b.table_id AND a.space <> 0;

有了这些信息就可以方便的定位啦,因为PAGE_LEVEL在每个页的偏移量64位置出,占用两个字节,通过hexdump这样的工具就可以快速定位到所需要的树高度信息:
root@test-1:~# hexdump -s 24640 -n 10 customer.ibd
00006040  00 02 00 00 00 00 00 00  00 47
查看customer表,24640表示的是3*8192+64(这里innodb_page_size设置为了8192,并非默认的16384,3代表的是PAGE_NO ),即第3个页偏移量64位置开始读取10个字节,但不是读取2个字节就可以了,其实因为后面8个字节对应的是index_id,就是上图中看到的index为71的索引,这里PAGE_LEVEL为00 02,那么索引的高度就为3

下面是我的公众号二维码,欢迎添加

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值