下面讲的命令,有部分只能在linux上才有。像pager命令windows上就没有了。
分屏:
在Linux上,而且不是xwindow时,使用mysql命令行时,输出太多的东西,看不到就很悲剧了。在shell中可以使用管道或是直接用more,但是mysql命令行里怎么办呢?
有pager命令,解决了上面的问题。
mysql>pager more
PAGERset to 'more'mysql>show tables;
table1
...
tableN--more--
等等,我要是不想再用分屏显示怎么办,nopager|\n帮你变回原样(stdout)。
pager的功能,可不只这种功能。
现在我只想知道执行命令需要多少时间,我想要放弃结果:
mysql> pager cat > /dev/nullPAGERset to 'cat > /dev/null'mysql> SELECT...1000 rows in set (0.91sec)
mysql> SELECT...1000 rows in set (1.63 sec)
“哦,我想要改造一下现在这条sql语句,可是又不知道改完以后得到的结果是否与原来的一样”:
mysql>pager md5sum
PAGERset to 'md5sum'mysql> SELECT...
32a1894d773c9b85172969c659175d2d1 row in set (0.40sec)
mysql> SELECT...
fdb94521558684afedc8148ca724f578-
1 row in set (0.16 sec)
结果不一样,我想我要重新调整一下。
show processlist输出的结果太多了,我想直接知道有多少连接sleep:
mysql> pager grep Sleep | wc -l
PAGERset to 'grep Sleep | wc -l'mysql>show processlist;337
346 rows in set (0.00 sec)
命令行有用的命令:
tee|\T filename:
把所有输出添加到filename文件里头。
取消使用:notee|\t
例:
mysql> tee text.logLoggingto file 'text.log'
source|\. filename:
运行filename文件里的sql语句。
例:mysql> source \tmp\mysql.sql
eog|\G:
执行命令,并把结果垂直输出,这个命令对于表里有很多字段时,为了显示的更清晰时,非常有用。
例:
mysql> show databases\G
*************************** 1. row ***************************
Database: information_schema
*************************** 2. row ***************************
Database: bigdb
后台省略
system command:
执行系统命令。
例:
mysql> system echo ‘execute system command’
execute system command
还有其他的命令,用help|\?去查看吧。