MySQL的客户端命令行工具,有不少方便使用者的特性,某些方面甚至能够说比Oracle的sqlplus更加人性化。固然从总体来讲,仍是sqlplus更加方便些,这么说或许是我对sqlplus更加熟悉吧。这里记录下MySQL命令行几个比较经常使用的特性。html
1.使用\G按行垂直显示结果
若是一行很长,须要这行显示的话,看起结果来就很是的难受。在SQL语句或者命令后使用\G而不是分号结尾,能够将每一行的值垂直输出。这个可能也是你们对于MySQL最熟悉的区别于其余数据库工具的一个特性了。
mysql> select * from db_archivelog\G
*************************** 1. row ***************************
id: 1
check_day: 2008-06-26
db_name: TBDB1
arc_size: 137
arc_num: 166
per_second: 1.6
avg_time: 8.7mysql
2.使用pager设置显示方式
若是select出来的结果集超过几个屏幕,那么前面的结果一晃而过没法看到。使用pager能够设置调用os的more或者less等显示查询结果,和在os中使用more或者less查看大文件的效果同样。
使用more
mysql> pager more
PAGER set to ‘more’
mysql> \P more
PAGER set to ‘more’
使用less
mysql> pager less
PAGER set to ‘less’
mysql> \P less
PAGER set to ‘less’
还原成stdout
mysql> nopager
PAGER set to stdoutsql
3.使用tee保存运行结果到文件
这个相似于sqlplus的spool功能,能够将命令行中的结果保存到外部文件中。若是指定已经存在的文件,则结果会附加到文件中。
mysql> tee output.txt
Logging to file ‘output.txt’
或者
mysql> \T output.txt
Logging to file ‘output.txt’数据库
mysql> notee
Outfile disabled.
或者
mysql> \t
Outfile disabled.less
4.执行OS命令
mysql> system uname
Linux
mysql> \! uname
Linuxide
5.执行SQL文件
mysql> source test.sql
+—————-+
| current_date() |
+—————-+
| 2008-06-28 |
+—————-+
1 row in set (0.00 sec)
或者
mysql> \. test.sql
+—————-+
| current_date() |
+—————-+
| 2008-06-28 |
+—————-+
1 row in set (0.00 sec)工具
其余还有一些功能,能够经过help或者?得到MySQL命令行支持的一些命令。.net
转载自:http://www.ningoo.net/html/2008/mysql_cmdline_tips_g_pager_tee.html命令行