mysql常用客户端工具的使用

网友投稿 511 2023-03-13

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。

mysql常用客户端工具的使用

因为工作中有时候会用到mysql的客户端工具,但是有的不常用的,慢慢就忘记了,所以,铁匠在这里把自己之前总结记录的mysql客户端工具使用方法写下来。

mysql客户端工具

--user,简写为-u--host,简写为-h--password,简写-p--port--protocol--database DATABASE,-D(在连入数据库的时候,设定为链接的数据库为默认数据库)例如:[root@tiejiang ~]# mysql -D mydb //这样的话,直接就是登陆mydb这个数据库了

--user,简写为-u--host,简写为-h--password,简写-p--port--protocol--database DATABASE,-D(在连入数据库的时候,设定为链接的数据库为默认数据库)例如:[root@ ~]# mysql -D mydb //这样的话,直接就是登陆mydb这个数据库了

mysql>    1、交互式模式   2、批处理模式(脚本模式)例:首先在命令行模式下,写一个sql文件[root@tiejiang ~]# vim testdb.sql		//创建一个sql文件   CREATE DATABASE testdb;		//创建一个testdb的数据库   CREATE TABLE testdb.tb1(id INT, name CHAR(20));		//给testdb数据库创建一张表tb1,后面的是表的参数)保存退出。[root@tiejiang ~]# mysql	//进入mysql数据库   mysql> source /root/testdb.sql	//直接用source来载入刚刚的testdb.sql文件   Query OK, 1 row affected (0.01 sec)	   Query OK, 0 rows affected (0.13 sec)   mysql> SHOW DATABASES;		//用SHOW来查看有没有创建出来testdb这个数据库   mysql> DROP DATABASE testdb;		//用DROP来删除刚刚创建出来的testdb数据库用另一种方法载入刚刚的脚本文件。[root@tiejiang ~]# mysql < testdb.sql		//另外一种载入文件的方法,直接mysql来导入。   mysql> use testdb;		//切换到testdb数据库   mysql> SHOW TABLES;		//查看一下testdb数据库下的表内容

mysql> 1、交互式模式 2、批处理模式(脚本模式)例:首先在命令行模式下,写一个sql文件[root@ ~]# vim testdb.sql //创建一个sql文件 CREATE DATABASE testdb; //创建一个testdb的数据库 CREATE TABLE testdb.tb1(id INT, name CHAR(20)); //给testdb数据库创建一张表tb1,后面的是表的参数)保存退出。[root@ ~]# mysql //进入mysql数据库 mysql> source /root/testdb.sql //直接用source来载入刚刚的testdb.sql文件 Query OK, 1 row affected (0.01 sec) Query OK, 0 rows affected (0.13 sec) mysql> SHOW DATABASES; //用SHOW来查看有没有创建出来testdb这个数据库 mysql> DROP DATABASE testdb; //用DROP来删除刚刚创建出来的testdb数据库用另一种方法载入刚刚的脚本文件。[root@ ~]# mysql < testdb.sql //另外一种载入文件的方法,直接mysql来导入。 mysql> use testdb; //切换到testdb数据库 mysql> SHOW TABLES; //查看一下testdb数据库下的表内容

mysql客户端命令分为两类

mysql>

1、客户端命令2、服务器命令(服务器语句结束符,默认为“;”分号)

1、客户端命令2、服务器命令(服务器语句结束符,默认为“;”分号)

所有服务端语句都要有语句结束符才可以执行,客户端不需要语句结束符

客户端常用命令:

delimiter:修改语句结束符的话,用delimiter命令即可,快捷键\d   例:mysql> delimiter //	//这里把双斜线代替了默认的“;”分号       mysql> SHOW DATABASES//		//执行sql语句的时候,后面不再添加“;”号,直接//即可clear:能够提前终止语句执行,快捷符号为\c   例:mysql> SELECT User,host FROM user\c	//最后不加语句结束符“;”直接用\c就可以不执行当前语句。connect:是重新链接到mysql服务上去的,快捷符号为\r   例:mysql> connect		//输入这个重新链接后,会显示connection的id和正在打开的数据库是谁go:无论语句结束符是什么,直接将此语句送至客户端执行,快捷符号为\g   例:mysql> SHOW DATABASES\g		//不管之前设置的命令结束符是什么,这里加上\g,就代表输入的语句一定会执行。ego:无论语句结束符是什么,直接将此语句送至客户端执行,而且以竖排的方式执行,快捷符号为\G   例:mysql> SHOW DATABASES\G		//不管之前设置的命令结束符是什么,这里加上\G,就代表输入的语句一定会竖排执行。print:显示当前正在执行的命令,快捷符号为\p   例:mysql> \p	//直接显示当前正在指定的语句命令source:载入sql文件,快捷符号为\.   例:mysql> \. /root/testdb.sql		//用\.把testdb.sql文件载入到数据库中。system:用这个命令不需要退出mysql,直接查看目录下的文件,快捷符号为\!   例:mysql> \! ls /root		//用\! 后面加是ls /root,直接查看root目录下的文件,无需要退出mysql客户端。主要用来执行shell命令的warnings:语句执行结束后显示警告信息,快捷符号为\Wnowarning:语句执行结果后不显示警告信息,快捷符号为\wrehash:对于新建的对象,基于补全的功能,快捷符号为\#--no-auto-rehash:禁用自动补全的命令,快捷符号为\-A

delimiter:修改语句结束符的话,用delimiter命令即可,快捷键\d 例:mysql> delimiter // //这里把双斜线代替了默认的“;”分号 mysql> SHOW DATABASES// //执行sql语句的时候,后面不再添加“;”号,直接//即可clear:能够提前终止语句执行,快捷符号为\c 例:mysql> SELECT User,host FROM user\c //最后不加语句结束符“;”直接用\c就可以不执行当前语句。connect:是重新链接到mysql服务上去的,快捷符号为\r 例:mysql> connect //输入这个重新链接后,会显示connection的id和正在打开的数据库是谁go:无论语句结束符是什么,直接将此语句送至客户端执行,快捷符号为\g 例:mysql> SHOW DATABASES\g //不管之前设置的命令结束符是什么,这里加上\g,就代表输入的语句一定会执行。ego:无论语句结束符是什么,直接将此语句送至客户端执行,而且以竖排的方式执行,快捷符号为\G 例:mysql> SHOW DATABASES\G //不管之前设置的命令结束符是什么,这里加上\G,就代表输入的语句一定会竖排执行。print:显示当前正在执行的命令,快捷符号为\p 例:mysql> \p //直接显示当前正在指定的语句命令source:载入sql文件,快捷符号为\. 例:mysql> \. /root/testdb.sql //用\.把testdb.sql文件载入到数据库中。system:用这个命令不需要退出mysql,直接查看目录下的文件,快捷符号为\! 例:mysql> \! ls /root //用\! 后面加是ls /root,直接查看root目录下的文件,无需要退出mysql客户端。主要用来执行shell命令的warnings:语句执行结束后显示警告信息,快捷符号为\Wnowarning:语句执行结果后不显示警告信息,快捷符号为\wrehash:对于新建的对象,基于补全的功能,快捷符号为\#--no-auto-rehash:禁用自动补全的命令,快捷符号为\-A

mysql客户端下引号的介绍

mysql> 【表示可以输入新的语句了】->【语句没有结束还可以继续输入】' >【缺少单引号的后一半】">【缺双引号的后一半】`>【缺反引号的后一半】/*>【缺多行注释的后一半】

mysql> 【表示可以输入新的语句了】->【语句没有结束还可以继续输入】' >【缺少单引号的后一半】">【缺双引号的后一半】`>【缺反引号的后一半】/*>【缺多行注释的后一半】

mysql的选项详解

mysql的输出格式

[root@tiejiang ~]# mysql --html		//把执行命令的结果用html格式显示出来   mysql> SELECT User,Host FROM user;     ERROR 1046 (3D000): No database selected   mysql> use mysql     Database changed   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>localhost</TD></TR><TR><TD>root</TD><TD>tiejiang</TD></TR></TABLE>3 rows in set (0.00 sec)		//把加粗的html格式,复制到html里面,用浏览器打开,就是html格式的数据库显示了。

[root@ ~]# mysql --html //把执行命令的结果用html格式显示出来 mysql> SELECT User,Host FROM user; ERROR 1046 (3D000): No database selected mysql> use mysql Database changed mysql> SELECT User,Host FROM user;

UserHost
root127.0.0.1
rootlocalhost
root
3 rows in set (0.00 sec) //把加粗的html格式,复制到html里面,用浏览器打开,就是html格式的数据库显示了。

[root@tiejiang ~]# mysql --xml		/把执行命令的结果用xml格式显示出来,步骤如上所示。

[root@ ~]# mysql --xml /把执行命令的结果用xml格式显示出来,步骤如上所示。

服务器端命令

所有的服务端命令都要发到服务器上才可以执行,如果不会使用服务器端命令的话,直接使用help加上语句的关键字即可。

例如,想知道select命令怎么使用。

mysql> help SELECT //即可查看select命令的语法和帮助文档。

mysqladmin常用命令

[root@tiejiang ~]# mysqladmin -uroot -predhat create hellodb		//通过mysqladmin的create创建hellodb数据库[root@tiejiang ~]# mysqladmin -uroot -predhat drop hellodb		//通过mysqladmin的drop删除hellodb数据库[root@tiejiang ~]# mysqladmin ping		//看本地服务器mysql数据库是否在线    mysqld is alive		//显示alive表示服务器正常运行状态[root@tiejiang ~]# mysqladmin -uroot -p -h192.168.163.22 ping	//看192.168.163.22服务器mysql数据库是否在线(ping别的服务器)[root@tiejiang ~]# mysqladmin processlist		//列出来服务器上正在执行的所有mysql线程[root@tiejiang ~]# mysqladmin status		//显示mysql数据库运行的状态(用来统计服务器的工作数据的)    Uptime: 9622  Threads: 7  Questions: 125  Slow queries: 0  Opens: 42  Flush tables: 1  Open tables: 32  Queries per second avg: 0.012     Uptime:启动时间     Threads:运行的线程数     Questions:已经完成的查询数     Slow querie:慢查询的次数     Opens:打开的表数     Flush tables:刷新的Flush的表数     Open tables:打开的文件数     Queries per second avg::平均下来mysql的每秒查询数[root@tiejiang ~]# mysqladmin status --sleep 2		//两秒钟执行一次mysql数据库的运行状态(实时监控mysql的运行状态的时候非常有用)[root@tiejiang ~]# mysqladmin status --sleep 2 --count 3		//用status看mysql的运行状态,用--sleep每两秒显示一次,用counts设置只显示三次。[root@tiejiang ~]# mysqladmin extended-status		//mysql的状态变量以及值[root@tiejiang ~]# mysqladmin variables		//服务器变量(用来定义服务器的工作属性的)[root@tiejiang ~]# mysqladmin flush-tables		//关闭所有以打开的表[root@tiejiang ~]# mysqladmin flush-threads		//重置线程缓存的[root@tiejiang ~]# mysqladmin flush-status		//重置绝大多数的服务器状态变量[root@tiejiang ~]# mysqladmin flush-logs		//做日志滚动的(主要实现二进制滚动和中继日志滚动,对错误日志不滚动)[root@tiejiang ~]# mysqladmin flush-hosts		//清楚主机的内部信息(包括:DNS缓存、以及太多的连接错误而导致的用户登陆)[root@tiejiang ~]# mysqladmin kill		//杀死一个线程(比如mysql一个内部县城被挂起了,用kill直接就可以杀死)[root@tiejiang ~]# mysqladmin reload		//让mysql重读授权表[root@tiejiang ~]# mysqladmin refresh		//表示flush-host和flush-logs同时执行[root@tiejiang ~]# mysqladmin shutdown		//直接停止mysql服务器进程[root@tiejiang ~]# mysqladmin version		//显示mysql的版本号和当前状态信息[root@tiejiang ~]# mysqladmin status-slave		//启动从服务器的复制进程(会一下启动下面两个)    1、SQL thread    2、IO thread[root@tiejiang ~]# mysqladmin stop-slave		//停止复制功能的

[root@ ~]# mysqladmin -uroot -predhat create hellodb //通过mysqladmin的create创建hellodb数据库[root@ ~]# mysqladmin -uroot -predhat drop hellodb //通过mysqladmin的drop删除hellodb数据库[root@ ~]# mysqladmin ping //看本地服务器mysql数据库是否在线 mysqld is alive //显示alive表示服务器正常运行状态[root@ ~]# mysqladmin -uroot -p -h192.168.163.22 ping //看192.168.163.22服务器mysql数据库是否在线(ping别的服务器)[root@ ~]# mysqladmin processlist //列出来服务器上正在执行的所有mysql线程[root@ ~]# mysqladmin status //显示mysql数据库运行的状态(用来统计服务器的工作数据的) Uptime: 9622 Threads: 7 Questions: 125 Slow queries: 0 Opens: 42 Flush tables: 1 Open tables: 32 Queries per second avg: 0.012 Uptime:启动时间 Threads:运行的线程数 Questions:已经完成的查询数 Slow querie:慢查询的次数 Opens:打开的表数 Flush tables:刷新的Flush的表数 Open tables:打开的文件数 Queries per second avg::平均下来mysql的每秒查询数[root@ ~]# mysqladmin status --sleep 2 //两秒钟执行一次mysql数据库的运行状态(实时监控mysql的运行状态的时候非常有用)[root@ ~]# mysqladmin status --sleep 2 --count 3 //用status看mysql的运行状态,用--sleep每两秒显示一次,用counts设置只显示三次。[root@ ~]# mysqladmin extended-status //mysql的状态变量以及值[root@ ~]# mysqladmin variables //服务器变量(用来定义服务器的工作属性的)[root@ ~]# mysqladmin flush-tables //关闭所有以打开的表[root@ ~]# mysqladmin flush-threads //重置线程缓存的[root@ ~]# mysqladmin flush-status //重置绝大多数的服务器状态变量[root@ ~]# mysqladmin flush-logs //做日志滚动的(主要实现二进制滚动和中继日志滚动,对错误日志不滚动)[root@ ~]# mysqladmin flush-hosts //清楚主机的内部信息(包括:DNS缓存、以及太多的连接错误而导致的用户登陆)[root@ ~]# mysqladmin kill //杀死一个线程(比如mysql一个内部县城被挂起了,用kill直接就可以杀死)[root@ ~]# mysqladmin reload //让mysql重读授权表[root@ ~]# mysqladmin refresh //表示flush-host和flush-logs同时执行[root@ ~]# mysqladmin shutdown //直接停止mysql服务器进程[root@ ~]# mysqladmin version //显示mysql的版本号和当前状态信息[root@ ~]# mysqladmin status-slave //启动从服务器的复制进程(会一下启动下面两个) 1、SQL thread 2、IO thread[root@ ~]# mysqladmin stop-slave //停止复制功能的

上面呢,是我大致的总结,如果有错误的,或者有补充的,欢迎大家,加入“网QQ群”和我们一起学习探讨。

上一篇:Linux集群系列之①—集群基础概念
下一篇:Mysql数据库主从备份基本概念篇
相关文章

 发表评论

暂时没有评论,来抢沙发吧~