一,mysql命令行参数

  1. Usage: mysql [OPTIONS] [database]   //命令方式
  2. -?, --help          //显示帮助信息并退出
  3. -I, --help          //显示帮助信息并退出
  4. --auto-rehash       //自动补全功能,就像linux里面,按Tab键出提示差不多,下面有例子
  5. -A, --no-auto-rehash  //默认状态是没有自动补全功能的。-A就是不要自动补全功能
  6. -B, --batch         //ysql不使用历史文件,禁用交互
  7. (Enables --silent)
  8. --character-sets-dir=name   //字体集的安装目录
  9. --default-character-set=name    //设置数据库的默认字符集
  10. -C, --compress      //在客户端和服务器端传递信息时使用压缩
  11. -#, --debug[=#]     //bug调用功能
  12. -D, --database=name //使用哪个数据库
  13. --delimiter=name    //mysql默认命令结束符是分号,下面有例子
  14. -e, --execute=name  //执行mysql的sql语句
  15. -E, --vertical      //垂直打印查询输出
  16. -f, --force         //如果有错误跳过去,继续执行下面的
  17. -G, --named-commands
  18. /*Enable named commands. Named commands mean this program's
  19. internal commands; see mysql> help . When enabled, the
  20. named commands can be used from any line of the query,
  21. otherwise only from the first line, before an enter.
  22. Disable with --disable-named-commands. This option is
  23. disabled by default.*/
  24. -g, --no-named-commands
  25. /*Named commands are disabled. Use \* form only, or use
  26. named commands only in the beginning of a line ending
  27. with a semicolon (;) Since version 10.9 the client now
  28. starts with this option ENABLED by default! Disable with
  29. '-G'. Long format commands still work from the first
  30. line. WARNING: option deprecated; use
  31. --disable-named-commands instead.*/
  32. -i, --ignore-spaces //忽视函数名后面的空格.
  33. --local-infile      //启动/禁用 LOAD DATA LOCAL INFILE.
  34. -b, --no-beep       //sql错误时,禁止嘟的一声
  35. -h, --host=name     //设置连接的服务器名或者Ip
  36. -H, --html          //以html的方式输出
  37. -X, --xml           //以xml的方式输出
  38. --line-numbers      //显示错误的行号
  39. -L, --skip-line-numbers  //忽略错误的行号
  40. -n, --unbuffered    //每执行一次sql后,刷新缓存
  41. --column-names      //查寻时显示列信息,默认是加上的
  42. -N, --skip-column-names  //不显示列信息
  43. -O, --set-variable=name  //设置变量用法是--set-variable=var_name=var_value
  44. --sigint-ignore     //忽视SIGINT符号(登录退出时Control-C的结果)
  45. -o, --one-database  //忽视除了为命令行中命名的默认数据库的语句。可以帮跳过日志中的其它数据库的更新。
  46. --pager[=name]      //使用分页器来显示查询输出,这个要在linux可以用more,less等。
  47. --no-pager          //不使用分页器来显示查询输出。
  48. -p, --password[=name] //输入密码
  49. -P, --port=#        //设置端口
  50. --prompt=name       //设置mysql提示符
  51. --protocol=name     //使用什么协议
  52. -q, --quick         //不缓存查询的结果,顺序打印每一行。如果输出被挂起,服务器会慢下来,mysql不使用历史文件。
  53. -r, --raw           //写列的值而不转义转换。通常结合--batch选项使用。
  54. --reconnect         //如果与服务器之间的连接断开,自动尝试重新连接。禁止重新连接,使用--disable-reconnect。
  55. -s, --silent        //一行一行输出,中间有tab分隔
  56. -S, --socket=name   //连接服务器的sockey文件
  57. --ssl               //激活ssl连接,不激活--skip-ssl
  58. --ssl-ca=name       //CA证书
  59. --ssl-capath=name   //CA路径
  60. --ssl-cert=name     //X509 证书
  61. --ssl-cipher=name   //SSL cipher to use (implies --ssl).
  62. --ssl-key=name      //X509 密钥名
  63. --ssl-verify-server-cert //连接时审核服务器的证书
  64. -t, --table         //以表格的形势输出
  65. --tee=name          //将输出拷贝添加到给定的文件中,禁时用--disable-tee
  66. --no-tee            //根--disable-tee功能一样
  67. -u, --user=name     //用户名
  68. -U, --safe-updates  //Only allow UPDATE and DELETE that uses keys.
  69. -U, --i-am-a-dummy  //Synonym for option --safe-updates, -U.
  70. -v, --verbose       //输出mysql执行的语句
  71. -V, --version       //版本信息
  72. -w, --wait          //服务器down后,等待到重起的时间
  73. --connect_timeout=# //连接前要等待的时间
  74. --max_allowed_packet=# //服务器接收/发送包的最大长度
  75. --net_buffer_length=# //TCP / IP和套接字通信缓冲区大小。
  76. --select_limit=#    //使用--safe-updates时SELECT语句的自动限制
  77. --max_join_size=#   //使用--safe-updates时联接中的行的自动限制
  78. --secure-auth       //拒绝用(pre-4.1.1)的方式连接到数据库
  79. --server-arg=name   //Send embedded server this as a parameter.
  80. --show-warnings     //显示警告
 

二,mysql命令行实例

1,auto-rehash自动补全

说例子前,先说一下,你到google或baidu上面搜一下mysql auto-rehash,然后会出来结果,绝大部分都是一样的,并且内容里面有明显错误。mysqld_safe --user=mysql --auto-rehash &,这个根本就不对,为什么抄袭的人不知道自己测试一下,对于这种人,我也是很无语的。你自己写着玩到也无所谓,但是你会害人的。

[root@BlackGhost zhangy]# mysqld_safe --help |grep rehash

参数选项中根本没有auto-rehash

二种方法可以实现自动补全功能
---------------------------------------
[mysql]
#no-auto-rehash
auto-rehash
---------------------------------------
mysql -u root --auto-rehash
---------------------------------------

  1. mysql> use test
  2. Database changed
  3. mysql> select acc    //这里自动补全,只是提示表名,和表里面的字段名,不像php可以提示函数名
  4. account           account.acct_num  account.amount    acct_num

2,-B的用法

  1. D:\xampp\mysql\bin>mysql.exe -uroot -D bak_test -e "show tables;" -B
  2. Tables_in_bak_test
  3. comment
  4. user

3,-E的用法

  1. D:\xampp\mysql\bin>mysql.exe -uroot bak_test -e "show tables;" -E
  2. *************************** 1. row ***************************
  3. Tables_in_bak_test: comment
  4. *************************** 2. row ***************************
  5. Tables_in_bak_test: user

4,-D的用法

  1. [root@BlackGhost zhangy]# mysql -u root -D test

进入后默认就在test数据库里面,不要用use test;

5,--default-character-set设置默认字符集

  1. [root@BlackGhost zhangy]# mysql -u root -D test  --default-character-set=utf8

6,--delimiter设置mysql命令结束符

  1. [root@BlackGhost zhangy]# mysql -u root -D test   --delimiter=\|

mysql默认的命令结束符是分号,现在把它设置成竖杠,要注意|前面的\

7,-e的用法

  1. D:\xampp\mysql\bin>mysql.exe -uroot -D bak_test -e "show tables;"

这个很有用的,因为我不用进入mysql客户里面去,就能把我要的数据取出来,这个可以配合shell脚本的话,能发挥很大的功能

8,-f的用法

  1. D:\xampp\mysql\bin>mysql.exe -uroot bak_test -e "show databaseds;show tables;" -
  2. f
  3. ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the ma
  4. nual that corresponds to your MySQL server version for the right syntax to use n
  5. ear 'databaseds' at line 1
  6. +--------------------+
  7. | Tables_in_bak_test |
  8. +--------------------+
  9. | comment            |
  10. | user               |
  11. +--------------------+

忽略mysql的错误,继续向下执行

9,-N的用法

  1. D:\xampp\mysql\bin>mysql.exe -uroot bak_test -e "select * from user" -N
  2. +---+------+---+
  3. | 1 |   bb | 0 |
  4. | 2 | tank | 0 |
  5. +---+------+---+

10,-p的用法

  1. [root@BlackGhost zhangy]# mysql -u root -o test -p   -S /tmp/mysql.sock
  2. Enter password

11,-h的用法

  1. [root@BlackGhost zhangy]# mysql -u root -h 192.168.1.102

服务器可能不只一个,这个时间我们可以用-h来指定连接哪里

12,-H的用法

  1. D:\xampp\mysql\bin>mysql.exe -uroot bak_test -e "show tables  " -H
  2. <TABLE BORDER=1><TR><TH>Tables_in_bak_test</TH></TR><TR><TD>comment</TD></TR><TR
  3. ><TD>user</TD></TR></TABLE>

13,-X的用法

  1. D:\xampp\mysql\bin>mysql.exe -uroot bak_test -e "show tables  " -X
  2. <?xml version="1.0"?>
  3. <resultset statement="show tables
  4. " xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  5. <row>
  6. <field name="Tables_in_bak_test">comment</field>
  7. </row>
  8. <row>
  9. <field name="Tables_in_bak_test">user</field>
  10. </row>
  11. </resultset>

14,--prompt的用法

  1. [root@BlackGhost zhangy]# mysql -u root --prompt=\^\_\^
  2. ^_^show databases;
  3. +--------------------+
  4. | Database           |
  5. +--------------------+
  6. | information_schema |
  7. | biztojie           |

mysql的提示符,我把它设置成笑脸了。

15,-S的用法

  1. [root@BlackGhost zhangy]# mysql -u root -D test   -S /tmp/mysql.sock

当我们一台服务器启动了二个不同mysql版本的时候,存放socket的文件是不能一样的,-S用来指定连接到那个

16,-v的用法

  1. [root@BlackGhost zhangy]# mysql -u root -D test -e "show tables;"   -v
  2. --------------
  3. show tables
  4. --------------

内容不止这么点,只说重点

17,-P的用法

    1. [root@BlackGhost zhangy]# mysql -u root -o test  -P 13306  -S /tmp/mysql.sock

MySQL命令行参数的更多相关文章

  1. mysql命令行参数(转)

    MySQL命令行参数 Usage: mysql [OPTIONS] [database] //命令方式  -?, --help //显示帮助信息并退出  -I, --help //显示帮助信息并退出  ...

  2. mysql 命令行参数

    MySQL命令行参数 Usage: mysql [OPTIONS] [database] //命令方式  例如: mysql -h${HOSTNAME}  -P${PORT}  -u${USERNAM ...

  3. mysql命令行参数 --- 这些参数不同于 mysqldump 后的 那些参数(下边文章开头有链接) :2种类型的参数 含义是不一样的

    mysql命令行参数  --- 这些参数不同于  mysqldump  后的 那些参数   :2种类型的参数 含义是不一样的 一,mysql命令行参数 Usage: mysql [OPTIONS] [ ...

  4. mysql命令行各个参数解释

    mysql命令行各个参数解释 http://blog.51yip.com/mysql/1056.html Usage: mysql [OPTIONS] [database]   //命令方式 -?, ...

  5. 用批处理启动MySQL命令行工具

    最近在看MySQL,安装好之后,每次在开始菜单去启动MySQL命令行工具的时候,都是直接用root用户连接我本地的数据库 输入密码开始工作,但是要连接服务器上的MySQL的话,就要去CMD下运行 : ...

  6. 通过mysql命令行理解mysql

    引言:工具不可谓给我们的生活带来了便利,但有些时候我们却忘记了事物本身的意义.在大多数人都在追捧甚至是盲从各种各样的工具有多先进的时候,你是否有反思过:你目前是否有使用它的资格. 假设你学会了使用一款 ...

  7. Mysql命令行导入sql数据

    mysqldump  是在  操作系统命令行下运行的,不是在 MySQL 命令行下运行的. 登陆数据库: 登陆本地mysql : mysql -h localhost -u root -p123456 ...

  8. MYSQL 命令行工具自动登录的方法

    MYSQL 命令行工具自动登录的方法 1. 需求提出 由于在linux 环境下,经常需要使用mysql(command-line tool) 终端连接到MYSQL DB服务. 其中大致的语法如下: m ...

  9. mysql命令行导入和导出数据

    首先打开命令窗口,输入命令:mysql -h localhost -u selffabu -p 连接成功后,进行下面的操作 MySQL中导出CSV格式数据的SQL语句样本如下: select * fr ...

随机推荐

  1. 使用crontab定时执行脚本时别忘了输出重定向>

    原文:https://blog.csdn.net/solmyr_biti/article/details/50683279 -------------------------------------- ...

  2. ivy在eclipse中的重新加载

    ivy在eclipse中的重新加载 如果由于网速的原因,导致了ivy没有正常的加载,可以进行ivy的重新加载: 1,右键点击项目,选择属性->Java Build Path->Librat ...

  3. 转:国内Top500Android应用分析报告

    转自:https://mp.weixin.qq.com/s?__biz=MzA5OTMxMjQzMw==&mid=2648112527&idx=1&sn=b23c1b5f3e3 ...

  4. Linux内存管理之mmap详解 (可用于android底层内存调试)

    注:将android底层malloc换为mmap来获取内存,可将获取到的内存添加tag,从而再利用meminfo进行分析,可单独查看该tag的内存,从而进行分析. 一. mmap系统调用 1. mma ...

  5. 读取xml生成lua測试代码

    #include <iostream> #include <string> #include <fstream> #include "tinyxml2.h ...

  6. iOS常用网络库收集

    一 ASIHttpRequest二 AFNetworking 三 AFDownloadRequestOperationA progressive download operation for AFNe ...

  7. 编资源bundle时图片文件变成tiff的解决方法

    一般,编写SDK的时候,如果SDK还带了一些资源文件,那么最理想的是将资源文件也打包成为bundle给应用方一起使用.而在编资源bundle时,有时会发现编译好后的图片文件从png转成了tiff,这样 ...

  8. 我所见过的最简短、最灵活的javascript日期转字符串工具函数

    我们知道javascript的Date对象并没有提供日期格式化函数.将日期对象转换成"2015-7-02 20:35:11"等这样的格式又是项目中非经常常使用的需求.近期在我们项目 ...

  9. C#连接池

    C#数据库连接池 MySql SqlServer 查阅了一天的资料来学习MySql数据库连接池,终于在一篇博文上找到了,自己也整理了一下,希望对大家有用处 1. 建立连接池 1 using MySql ...

  10. Struts拦截器(转)

    xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC &qu ...