mysql命令行工具的编辑技巧

从mysql performace blog 中学到的:



1. pager

例子

mysql> pager more

PAGER set to 'more'

mysql>show variables;

然后就使用more命令来显示“show variables”的输出



根据我的理解, pager之后可以跟任何shell命令来编辑 pager中输出的结果,pager会使用管道把结果传递给后面的命令。 相对于“[mysql执行结果] | shell命令"例如:

mysql>pager grep log | more

PAGER set to "grep log | more"

mysql>show variables;

上面的例子用more来显示了所有变量名中带有“log”的变量。



操作完之后,可以使用一个空的pager命令关闭pager模式

mysql>pager

Default pager wasn't set, using stdout.



2. edit

该命令会打开一个编辑窗口来编辑你敲入的上一条命令。默认是一个vi 窗口,可以使用各种vi命令来编辑sql语句。

例如:

mysql>show tables;

...

mysql>edit

                      //这里敲回车,注意这里没有分号

(在打开的vi中编辑,然后wq退出)

        >;                            //退出后在敲上 分号。 来执行这条编辑后的语句。



3. tee

该命令可以指定一个文件用来保存之后该session的所有输入和执行结果,例如:

mysql> tee /tmp/queries.log

Logging to file '/tmp/query.log'

[do your sql here]

mysql>exit;



cat /tmp/queries.log 来查看刚才输入的命令和结果。
转自:http://hi.baidu.com/gao_dennis/item/afe2d7b24b9d7a42ba0e12ca
05-11 13:13