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 检查工具
转载于:https://blog.51cto.com/11107124/1896942