簡體   English   中英

MySQL通過SSH + Bash錯誤

[英]MySQL via SSH + Bash error

ssh root@162.243.67.60 mysql -uroot -p --execute =“將wordpress。*上的所有特權授予'firaswp'@'54.89.73.129',由'password'標識”

它沒有給我語法錯誤,但是卻給出了一個非常奇怪的輸出。 一直試圖讓mysql通過SSH運行1-2天的授予特權選項,但我仍然無法弄清楚。 這不是我想要的主要內容-實際上我想在腳本中輸入IP作為變量,但是首先,我認為我可以使其正常工作..任何幫助將不勝感激! 輸出如下。

適用於redhat-linux-gnu(x86_64)的mysql Ver 14.14 Distrib 5.1.73,使用readline 5.1版權所有(c)2000、2013,Oracle和/或其分支機構。 版權所有。

Oracle是Oracle Corporation和/或其分支機構的注冊商標。 其他名稱可能是其各自所有者的商標。

用法:mysql [OPTIONS] [database]-?, --help顯示此幫助並退出。 -I,--help是-的同義詞? --auto-翻版
啟用自動重新哈希處理。 不需要使用“重新哈希”來完成表和字段,但是啟動和重新連接可能需要更長的時間。 使用--disable-auto-hash禁用。 -A,--no-auto-rehash沒有自動重新哈希。 必須使用“重新哈希”來獲得表和字段的完成。 這樣可以更快地啟動mysql,並在重新連接時禁用重新哈希。 -B,--batch不使用歷史文件。 禁用交互行為。 (啟用--silent。)--character-sets-dir = name字符集文件的目錄。 --column-type-in​​fo顯示列類型信息。 -c,--comments保留注釋。 將評論發送到服務器。 默認值為--skip-comments(丟棄注釋),使用--comments啟用。 -C,--compress在服務器/客戶端協議中使用壓縮。 -#,--debug [=#]這是非調試版本。 趕上並退出。 --debug-check在出口檢查內存並打開文件使用情況。 -T,--debug-info在出口處打印一些調試信息。 -D,--database = name要使用的數據庫。
--default-character-set = name設置默認字符集。 --delimiter = name要使用的分隔符。 -e,--execute = name執行命令並退出。 (禁用--force和歷史文件。)-E,--vertical垂直打印查詢(行)的輸出。 -f,--force即使出現SQL錯誤,也繼續。 -G,--named-commands啟用命名命令。 命名命令表示該程序的內部命令。 參見mysql> help。 啟用后,可以在查詢的任何行中使用命名命令,否則只能在回車之前的第一行中使用。 使用--disable-named-commands禁用。 默認情況下禁用此選項。 -g,--no-named-commands禁用命名命令。 僅使用*形式,或僅在以分號(;)結尾的行的開頭使用命名命令。 從版本10.9開始,客戶端現在默認啟用此選項。 禁用“ -G”。 長格式命令仍然從第一行開始工作。 警告:不建議使用該選項; 請改用--disable-named-commands。 -i,--ignore-spaces忽略函數名稱后的空格。 --local-infile啟用/禁用LOAD DATA LOCAL INFILE。 -b,--no-beep關閉錯誤提示音。 -h,--host = name連接到主機。 -H,--html
產生HTML輸出。 -X,--xml生成XML輸出。
--line-numbers寫入行號以獲取錯誤。 -L,--skip-line-numbers不要為錯誤寫行號。 -n,--unbuffered每次查詢后刷新緩沖區。 --column-names在結果中寫入列名。 -N,--skip-column-names不要在結果中寫入列名。 -O,--set-variable = name更改變量的值。 請注意,此選項已被棄用。 您可以使用--variable-name = value直接設置變量。 --sigint-ignore忽略SIGINT(CTRL-C)。 -o,--one-database忽略語句,但默認數據庫是在命令行中命名的語句除外。 --pager [= name]用於顯示結果的尋呼機。 如果您不提供選項,則默認尋呼機將從您的ENV變量PAGER中獲取。 有效的傳呼機越來越少,等等[>文件名]等。另請參見交互式幫助(\\ h)。 此選項在批處理模式下不起作用。 使用--disable-pager禁用。 默認情況下禁用此選項。 --no-pager禁用尋呼機並打印到標准輸出。 另請參見交互式幫助(\\ h)。 警告:不建議使用該選項; 使用--disable-pager代替。 -p,--password [= name]連接服務器時使用的密碼。 如果未提供密碼,則從tty詢問。 -P,--port =#用於連接的端口號,或默認為0(默認為my.cnf,$ MYSQL_TCP_PORT,/ etc / services,內置默認值(3306))。 --prompt = name設置mysql提示符為該值。 --protocol = name用於連接的協議(TCP,套接字,管道,內存)。 -q,--quick不緩存結果,逐行打印。 如果輸出被掛起,這可能會降低服務器的速度。 不使用歷史記錄文件。 -r,--raw無需轉換即可寫入字段。 與--batch一起使用。 --reconnect如果連接丟失,請重新連接。 使用--disable-reconnect禁用。 默認情況下啟用此選項。 -s,--silent保持沉默。 用制表符作為分隔符打印結果,每行新行。 -S,--socket = name用於連接的套接字文件。 --ssl啟用SSL進行連接(通過其他標志自動啟用)。使用--skip-ssl禁用。 --ssl-ca = name PEM格式的CA文件(檢查OpenSSL文檔,暗含--ssl)。 --ssl-capath =名稱CA目錄(檢查OpenSSL文檔,暗含--ssl)。 --ssl-cert = name PEM格式的X509證書(意味着--ssl)。 --ssl-cipher = name要使用的SSL密碼(意味着--ssl)。 --ssl-key = name PEM格式的X509密鑰(意味着--ssl)。 --ssl-verify-server-cert針對連接時使用的主機名,驗證其證書中服務器的“公用名”。 默認情況下禁用此選項。 -t,--table以表格式輸出。 --tee = name將所有內容附加到輸出文件中。 另請參見交互式幫助(\\ h)。 在批處理模式下不起作用。 使用--disable-tee禁用。 默認情況下禁用此選項。 --no-tee禁用輸出文件。 另請參見交互式幫助(\\ h)。 警告:不建議使用該選項; 使用--disable-tee代替。 -u,--user = name如果不是當前用戶,則為登錄用戶。 -U,--safe-updates僅允許使用鍵的UPDATE和DELETE。 -U,-i-am-a-dummy選項--safe-updates,-U的同義詞。 -v,--verbose寫更多。 (-v -v -v給出表的輸出格式)。 -V,--version輸出版本信息並退出。 -w,--wait等待並在連接斷開時重試。 --connect_timeout =#連接超時之前的秒數。 --max_allowed_pa​​cket =#要發送到服務器或從服務器接收的最大數據包長度。 --net_buffer_length =#TCP / IP和套接字通信的緩沖區大小。 --select_limit =#使用--safe-updates時SELECT的自動限制。 --max_join_size =#使用--safe-updates時聯接中行的自動限制。 --secure-auth如果客戶端使用舊的(4.1.1之前)協議,則拒絕客戶端連接。 --server-arg = name將其作為參數發送給嵌入式服務器。 --show-warnings在每個語句后顯示警告。

默認選項是按照給定的順序從以下文件中讀取的:/etc/mysql/my.cnf /etc/my.cnf〜/ .my.cnf讀取以下組:mysql client以下選項可以作為第一個選項參數:--print-defaults打印程序參數列表並退出。 --no-defaults不從任何選項文件中讀取默認選項。 --defaults-file =#僅從給定文件#中讀取默認選項。 --defaults-extra-file =#在讀取全局文件后讀取此文件。

變量(--variable-name = value)和布爾選項{FALSE | TRUE}值(讀取選項之后)-------------------------- ------- -----------------------------自動重新編碼TRUE character-sets-dir
(無默認值)column-type-in​​fo FALSE注釋
FALSE compress FALSE調試檢查
FALSE調試信息FALSE數據庫
(無默認值)default-character-set latin1定界符; 垂直假力
FALSE命名命令FALSE忽略空間
FALSE本地文件內FALSE無提示
FALSE主機(無默認值)html
FALSE xml FALSE行號
TRUE無緩沖FALSE列名
真sigint-ignore FALSE端口
0提示mysql>快速
FALSE原始FALSE重新連接
FALSE套接字(無默認值)ssl
FALSE ssl-ca(無默認值)ssl-capath(無默認值)ssl-cert(無默認值)ssl-cipher(無默認值)ssl-key
(無默認值)ssl-verify-server-cert FALSE表
FALSE用戶root安全更新
虛假我是虛擬的虛假connect_timeout
0 max_allowed_pa​​cket 16777216 net_buffer_length
16384 select_limit 1000 max_join_size
1000000個安全認證的FALSE顯示警告

  1. 您的mysql命令語法錯誤。 我認為您需要在-uroot之間留一個空格,即-u root
  2. 為什么不將命令分解為多個步驟,即

     $ssh root@162.243.67.60 $mysql -u root -p mysql> grant all privileges on wordpress.* to 'firaswp'@'54.89.73.129' identified by 'password' 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM