mysql 命令行參數以及參數解析


友情鏈接1:https://www.cnblogs.com/cloudwas/p/13072841.html
友情鏈接2: https://www.cnblogs.com/cloudwas/p/13072749.html

mysql命令行參數

Usage: mysql [OPTIONS] [database]   //命令方式
 -?, --help          //顯示幫助信息並退出
 -I, --help          //顯示幫助信息並退出
 --auto-rehash       //自動補全功能,就像linux里面,按Tab鍵出提示差不多,下面有例子

 -A, --no-auto-rehash  //默認狀態是沒有自動補全功能的。-A就是不要自動補全功能
 -B, --batch         //ysql不使用歷史文件,禁用交互
 (Enables --silent)
 --character-sets-dir=name   //字體集的安裝目錄                    
 --default-character-set=name    //設置數據庫的默認字符集
 -C, --compress      //在客戶端和服務器端傳遞信息時使用壓縮
 -#, --debug[=#]     //bug調用功能
 -D, --database=name //使用哪個數據庫
 --delimiter=name    //mysql默認命令結束符是分號,下面有例子
 -e, --execute=name  //執行mysql的sql語句
 -E, --vertical      //垂直打印查詢輸出
 -f, --force         //如果有錯誤跳過去,繼續執行下面的
 -G, --named-commands
 /*Enable named commands. Named commands mean this program's
 internal commands; see mysql> help . When enabled, the
 named commands can be used from any line of the query,
 otherwise only from the first line, before an enter.
 Disable with --disable-named-commands. This option is
 disabled by default.*/
 -g, --no-named-commands
 /*Named commands are disabled. Use \* form only, or use
 named commands only in the beginning of a line ending
 with a semicolon (;) Since version 10.9 the client now
 starts with this option ENABLED by default! Disable with
 '-G'. Long format commands still work from the first
 line. WARNING: option deprecated; use
 --disable-named-commands instead.*/
 -i, --ignore-spaces //忽視函數名后面的空格.
 --local-infile      //啟動/禁用 LOAD DATA LOCAL INFILE.
 -b, --no-beep       //sql錯誤時,禁止嘟的一聲
 -h, --host=name     //設置連接的服務器名或者Ip
 -H, --html          //以html的方式輸出
 -X, --xml           //以xml的方式輸出
 --line-numbers      //顯示錯誤的行號
 -L, --skip-line-numbers  //忽略錯誤的行號
 -n, --unbuffered    //每執行一次sql后,刷新緩存
 --column-names      //查尋時顯示列信息,默認是加上的
 -N, --skip-column-names  //不顯示列信息
 -O, --set-variable=name  //設置變量用法是--set-variable=var_name=var_value
 --sigint-ignore     //忽視SIGINT符號(登錄退出時Control-C的結果)
 -o, --one-database  //忽視除了為命令行中命名的默認數據庫的語句。可以幫跳過日志中的其它數據庫的更新。
 --pager[=name]      //使用分頁器來顯示查詢輸出,這個要在linux可以用more,less等。
 --no-pager          //不使用分頁器來顯示查詢輸出。
 -p, --password[=name] //輸入密碼
 -P, --port=#        //設置端口
 --prompt=name       //設置mysql提示符
 --protocol=name     //使用什么協議
 -q, --quick         //不緩存查詢的結果,順序打印每一行。如果輸出被掛起,服務器會慢下來,mysql不使用歷史文件。
 -r, --raw           //寫列的值而不轉義轉換。通常結合--batch選項使用。
 --reconnect         //如果與服務器之間的連接斷開,自動嘗試重新連接。禁止重新連接,使用--disable-reconnect。
 -s, --silent        //一行一行輸出,中間有tab分隔
 -S, --socket=name   //連接服務器的sockey文件
 --ssl               //激活ssl連接,不激活--skip-ssl
 --ssl-ca=name       //CA證書
 --ssl-capath=name   //CA路徑
 --ssl-cert=name     //X509 證書
 --ssl-cipher=name   //SSL cipher to use (implies --ssl).
 --ssl-key=name      //X509 密鑰名
 --ssl-verify-server-cert //連接時審核服務器的證書
 -t, --table         //以表格的形勢輸出
 --tee=name          //將輸出拷貝添加到給定的文件中,禁時用--disable-tee
 --no-tee            //根--disable-tee功能一樣
 -u, --user=name     //用戶名
 -U, --safe-updates  //Only allow UPDATE and DELETE that uses keys.
 -U, --i-am-a-dummy  //Synonym for option --safe-updates, -U.
 -v, --verbose       //輸出mysql執行的語句
 -V, --version       //版本信息
 -w, --wait          //服務器down后,等待到重起的時間
 --connect_timeout=# //連接前要等待的時間
 --max_allowed_packet=# //服務器接收/發送包的最大長度
 --net_buffer_length=# //TCP / IP和套接字通信緩沖區大小。
 --select_limit=#    //使用--safe-updates時SELECT語句的自動限制
 --max_join_size=#   //使用--safe-updates時聯接中的行的自動限制
 --secure-auth       //拒絕用(pre-4.1.1)的方式連接到數據庫
 --server-arg=name   //Send embedded server this as a parameter.
 --show-warnings     //顯示警告

mysql命令行實例

1,auto-rehash自動補全

mysqld_safe --help |grep rehash

2,-B的用法

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

3,-E的用法

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

4,-D的用法

進入后默認就在test數據庫里面,不要用use test;
[root@BlackGhost zhangy]# mysql -u root -D test

5,--default-character-set設置默認字符集

mysql -u root -D test  --default-character-set=utf8

6,--delimiter設置mysql命令結束符

mysql -u root -D test   --delimiter=\|

7,-e的用法

這個很有用的,因為我不用進入mysql客戶里面去,就能把我要的數據取出來,這個可以配合shell腳本的話,能發揮很大的功能

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

8,-f的用法

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

9,-N的用法

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

10,-p的用法

mysql -u root -o test -p   -S /tmp/mysql.sock  

11,-h的用法

mysql -u root -h 192.168.1.102

12,-H的用法

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

13,-X的用法

D:\xampp\mysql\bin>mysql.exe -uroot bak_test -e "show tables  " -X  
<?xml version="1.0"?>   
 
<resultset statement="show tables 
" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  
<row>  
<field name="Tables_in_bak_test">comment</field>  
</row>   
 
<row>  
<field name="Tables_in_bak_test">user</field>  
</row>  
</resultset>

14,--prompt的用法

mysql -u root --prompt=\^\_\^  
^_^show databases;  
+--------------------+  
| Database           |  
+--------------------+  
| information_schema |  
| biztojie           |

15,-S的用法

mysql -u root -D test   -S /tmp/mysql.sock

16,-v的用法

mysql -u root -D test -e "show tables;"   -v  
--------------  
show tables  
--------------

17,-P的用法

mysql -u root -o test  -P 13306  -S /tmp/mysql.sock


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM