mysql 

--user, -u

--host, -h

--password, -p

--port

--protocol

--database DATABASE, -D


MySQL的批处理模式

[root@node1 ~]# vim /test.sql


create database testdb;

create table testdb.tb1 (id INT,name CHAR(20))

[root@node1 ~]# mysql

mysql> \. /test.sql

Query OK, 1 row affected (0.09 sec)


Query OK, 0 rows affected (0.29 sec)


mysql> drop database testdb; #删除

Query OK, 1 row affected (0.25 sec)


mysql> show databases;

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

| Database           |

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

| information_schema |

| mydb              |

| mysql             |

| test             |

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

16 rows in set (0.06 sec)


或者

[root@node1 ~]# mysql -uroot -p < /test.sql

Enter password: 

[root@node1 ~]# mysql -uroot -p

mysql> use testdb;

mysql> show tables;

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

| Tables_in_testdb |

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

| tb1              |

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

1 row in set (0.00 sec)



MySQL的命令分为客户端命令和服务器端命令;服务器端命令结束要加;(默认)


status 查看当前状态

\d 修改结束符

\r 重新连接到MySQL-server

\g 无论结束符是什么都送到服务器端执行

\G 无论结束符是什么都送到服务器端执行,并将结果竖着显示 @很行显示不了时\G和好用

\! 直接执行shell命令

\c 突然不想执行此命令了,用\c中止

-A 在连接MySQL时使用-A,禁用名称补全


mysql> rehash    使用名称补全,会影响速度

mysql> \d #     将命令结束符改为#

mysql> show tables;

    -> show tables#

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

| Tables_in_testdb |

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

| tb1              |

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

1 row in set (0.00 sec)


mysql> \! ls /tool

apache-tomcat-7.0.73.tar.gz    memcached-1.4.33

crmsh-2.3.2-1.1.noarch_(1).rpm    mysql-5.6.34.tar.gz

crmsh-scripts-2.3.2-1.1.noarch.rpm  nginx-1.10.2

Discuz_X3.2_SC_GBK_(1).zip    nginx-1.10.2.tar.gz

httpd-2.4.23    package.xml

jdk-8u112-linux-x64.tar.gz    python-parallax-1.0.1-9.8.x86_64.rpm

libevent-2.0.22-stable    readme

libmemcached-1.0.18.tar.gz    xcache-3.2.0

memadmin-1.0.12.tar.gz    xcache-3.2.0.tar.gz


[root@node1 ~]# mysql --html #将MySQL的输出格式改为html

mysql> use mysql

mysql> select user,host from user;

<TABLE BORDER=1><TR><TH>user</TH><TH>host</TH></TR><TR><TD>root</TD><TD>127.0.0.1</TD></TR><TR><TD>root</TD><TD>192.168.%.%</TD></TR><TR><TD>root</TD><TD>localhost</TD></TR><TR><TD>root</TD><TD>node1.zxl.com</TD></TR></TABLE>4 rows in set (0.05 sec)


将输出结果保存为.html格式后,用浏览器打开显示为一个表格


获取帮助 help command

mysql> help select

mysql> help create index 获取创建索引的帮助



mysqladmin命令的用法


[root@node1 ~]# mysqladmin -uroot -p password '123456' 将密码改为123456

Enter password: 

再次改回来

mysql>  update mysql.user set password=password('123') where user='root';

mysql> flush privileges;

mysql> \q

[root@node1 ~]# mysql

Welcome to the MySQL monitor.  Commands end with ; or \g.


ping 查看MySQL主机是否在线

[root@node1 ~]# mysqladmin ping

mysqld is alive


[root@node1 ~]# mysqladmin create  hellodb 创建hellodb库

[root@node1 ~]# mysqladmin drop  hellodb  删除hellodb库


显示MySQL的状态信息,且可以连续显示多次

[root@node1 ~]# mysqladmin  status

Uptime: 16982  Threads: 1  Questions: 117  Slow queries: 0  Opens: 88  Flush tables: 1 Open tables: 81  Queries per second avg: 0.006

[root@node1 ~]# mysqladmin  status --sleep 1 --count 5


显示状态变量及其值

[root@node1 ~]# mysqladmin  extended-status

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

| Variable_name                                 | Value     

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

| Aborted_clients                               | 0         

| Aborted_connects                              | 4         |

| Binlog_cache_disk_use                         | 0           |

| Binlog_cache_use                              | 0         |

| Binlog_stmt_cache_disk_use                       | 0            |

| Binlog_stmt_cache_use                         | 14          |

| Bytes_received                                | 7104      |

| Bytes_sent                                    | 38911    |


显示服务器变量

[root@node1 ~]# mysqladmin variables

刷新授权表

[root@node1 ~]# mysqladmin flush-privileges

关闭所有打开的表

[root@node1 ~]# mysqladmin flush-tables

重置线程池缓存

[root@node1 ~]# mysqladmin flush-threads

重置大多数服务器状态变量,让其从0开始计数

[root@node1 ~]# mysqladmin flush-privileges

关闭MySQL服务器

[root@node1 ~]# mysqladmin shutdown


启动和关闭从服务器的复制线程

[root@node1 ~]# mysqladmin start-slave

[root@node1 ~]# mysqladmin stop-slave


其他的MySQL客户端工具还有

mysqldump 一个备份工具

mysqlimport 一个导入工具

mysqlcheck 检查工具