MySQL Client 有时会被DBA忘记的功能

MySQL · ruyi · 于 5个月前发布 · 447 次阅读

MySQL Client有一些功能我们从来不会用到,为什么不试试呢?

1.提示:

如果你连接的数据库比较多,容易混淆的话,可以用下面的命令对数据库做一个区分提示

mysql> \R production>

PROMPT set to 'production>'

production>

或者可以如下显示主机和当前数据库

production>\R \u@\h [\d]>

PROMPT set to '\u@\h [\d]>'

root@localhost [(none)]>use test

root@localhost [test]>

如下可显示当前时间和当前数据库

mysql> prompt \R:\m:\s \d>

PROMPT set to '\R:\m:\s \d>'

09:51:01 test>

配置文件中配置方式:

[mysql]

prompt = "\\R:\\m:\\s \\d> "

pager = "more"

2.编辑

MySQL客户端可以在线编辑语句并执行,使用\e

mysql> \e

写入要执行的语句然后保存

select * from t

limit 1;

输入一个分隔符;即可执行编辑的语句

mysql> \e

    -> ;

+---+----------+

| a | b |

+---+----------+

| 4 | anteloge |

+---+----------+

1 row in set (0.00 sec)

3.日志

将执行的关键部分记录到一个日志文件里面

mysql> \R Aliyun>

PROMPT set to 'Aliyun>'

Aliyun>\T /tmp/tee.log

Logging to file '/tmp/tee.log'

Aliyun>select sysdate();

+---------------------+

| sysdate() |

+---------------------+

| 2014-03-04 09:17:13 |

+---------------------+

1 row in set (0.00 sec)

Aliyun>\! cat /tmp/tee.log

Aliyun>select sysdate();

+---------------------+

| sysdate() |

+---------------------+

| 2014-03-04 09:17:13 |

+---------------------+

1 row in set (0.00 sec)

Aliyun>

4.状态

可以在数据库客户端查看数据库的基本状态,使用\s

Aliyun>\s

--------------

mysql Ver 14.14 Distrib 5.6.12, for linux-glibc2.5 (x86_64) using EditLine wrapper

Connection id: 2596261

Current database: test

Current user: root@localhost

SSL: Not in use

Current pager: stdout

Using outfile: '/tmp/tee.log'

Using delimiter: ;

Server version: 5.6.12 MySQL Community Server (GPL)

Protocol version: 10

Connection: Localhost via UNIX socket

Server characterset: utf8

Db characterset: latin1

Client characterset: utf8

Conn. characterset: utf8

UNIX socket: /tmp/mysql.sock

Uptime: 7 days 14 hours 44 min 50 sec

Threads: 14 Questions: 16993544 Slow queries: 3 Opens: 647 Flush tables: 1 Open tables: 476 Queries per second avg: 25.830

--------------

Aliyun>

5.清除:

清除当前输入的查询语句,使用\c

Aliyun>select * from test

    -> \c

Aliyun>

6.翻页

如果结果比较多,可以翻页查看,使用\P

Aliyun>\P less

PAGER set to 'less'

Aliyun>select * from mysql_status_history limit 1000;

1000 rows in set (0.00 sec)

Aliyun>\P cat > /tmp/test.log

PAGER set to 'cat > /tmp/test.log'

Aliyun>select * from mysql_status_history limit 1000;

1000 rows in set (0.03 sec)

Aliyun>\! more /tmp/test.log

7.其他

这节课程里面还有其他一些选项可以使用,你可以使用\?进行查看。



1 人推荐
共收到 0 条评论
没有找到数据。
评论文章 (需要登录)