文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (US Ltr) - 40.0Mb
PDF (A4) - 40.1Mb
Man Pages (TGZ) - 258.2Kb
Man Pages (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 參考手冊  /  ...  /  mysqlcheck — 資料表維護程式

6.5.3 mysqlcheck — 資料表維護程式

mysqlcheck 用戶端會執行資料表維護:它會檢查、修復、最佳化或分析資料表。

每個資料表在處理時都會被鎖定,因此對其他工作階段不可用,但是對於檢查操作,資料表僅以 READ 鎖定鎖定(請參閱 第 15.3.6 節,「LOCK TABLES 和 UNLOCK TABLES 陳述式」,以取得關於 READWRITE 鎖定的詳細資訊)。資料表維護操作可能很耗時,特別是對於大型資料表。如果您使用 --databases--all-databases 選項來處理一個或多個資料庫中的所有資料表,則呼叫 mysqlcheck 可能會花費很長時間。(如果 MySQL 升級程序判斷需要資料表檢查,則也會發生這種情況,因為它會以相同的方式處理資料表。)

必須在 mysqld 伺服器正在執行時使用 mysqlcheck,這表示您不必停止伺服器來執行資料表維護。

mysqlcheck 以方便使用者的方式使用 SQL 陳述式 CHECK TABLEREPAIR TABLEANALYZE TABLEOPTIMIZE TABLE。它會判斷要對您要執行的操作使用哪些陳述式,然後將陳述式傳送到伺服器執行。如需每個陳述式適用於哪些儲存引擎的詳細資訊,請參閱 第 15.7.3 節,「資料表維護陳述式」中這些陳述式的描述。

並非所有儲存引擎都一定支援所有四種維護操作。在這種情況下,會顯示錯誤訊息。例如,如果 test.tMEMORY 資料表,則嘗試檢查它會產生以下結果:

$> mysqlcheck test t
test.t
note     : The storage engine for the table doesn't support check

如果 mysqlcheck 無法修復資料表,請參閱 第 3.14 節,「重建或修復資料表或索引」以取得手動資料表修復策略。例如,對於 InnoDB 資料表,可以使用 CHECK TABLE 檢查,但無法使用 REPAIR TABLE 修復。

注意

最好在執行資料表修復操作之前備份資料表;在某些情況下,該操作可能會導致資料遺失。可能的原因包括但不限於檔案系統錯誤。

有三種一般方式可以呼叫 mysqlcheck

mysqlcheck [options] db_name [tbl_name ...]
mysqlcheck [options] --databases db_name ...
mysqlcheck [options] --all-databases

如果您在 db_name 之後未命名任何資料表,或者您使用 --databases--all-databases 選項,則會檢查整個資料庫。

與其他用戶端程式相比,mysqlcheck 具有特殊功能。檢查資料表 (--check) 的預設行為可以透過重新命名二進位檔來變更。如果您想要預設修復資料表的工具,則只需製作一個名為 mysqlrepairmysqlcheck 副本,或建立一個名為 mysqlrepairmysqlcheck 的符號連結。如果您呼叫 mysqlrepair,它會修復資料表。

下表顯示的名稱可用於變更 mysqlcheck 的預設行為。

指令 意義
mysqlrepair 預設選項為 --repair
mysqlanalyze 預設選項為 --analyze
mysqloptimize 預設選項為 --optimize

mysqlcheck 支援下列選項,這些選項可以在命令列中指定,也可以在選項檔案的 [mysqlcheck][client] 群組中指定。如需 MySQL 程式使用的選項檔案資訊,請參閱 章節 6.2.2.2,「使用選項檔案」

表 6.12 mysqlcheck 選項

選項名稱 描述
--all-databases 檢查所有資料庫中的所有資料表
--all-in-1 針對每個資料庫執行一個語句,其中命名了該資料庫中的所有資料表
--analyze 分析資料表
--auto-repair 如果檢查的資料表已損壞,則自動修復它
--bind-address 使用指定的網路介面連線到 MySQL 伺服器
--character-sets-dir 字元集安裝目錄
--check 檢查資料表是否有錯誤
--check-only-changed 僅檢查自上次檢查以來已變更或未正確關閉的資料表
--check-upgrade 使用 FOR UPGRADE 選項叫用 CHECK TABLE
--compress 壓縮用戶端和伺服器之間傳送的所有資訊
--compression-algorithms 允許連線至伺服器的壓縮演算法
--databases 將所有引數解讀為資料庫名稱
--debug 寫入偵錯記錄
--debug-check 程式結束時列印偵錯資訊
--debug-info 程式結束時列印偵錯資訊、記憶體和 CPU 統計資料
--default-character-set 指定預設字元集
--defaults-extra-file 除了通常的選項檔案之外,還讀取指定的選項檔案
--defaults-file 僅讀取指定的選項檔案
--defaults-group-suffix 選項群組後綴值
--enable-cleartext-plugin 啟用明文驗證外掛程式
--extended 檢查和修復資料表
--fast 僅檢查未正確關閉的資料表
--force 即使發生 SQL 錯誤也繼續
--get-server-public-key 從伺服器請求 RSA 公開金鑰
--help 顯示說明訊息並結束
--host MySQL 伺服器所在的電腦
--login-path 從 .mylogin.cnf 讀取登入路徑選項
--medium-check 執行比 --extended 操作更快的檢查
--no-defaults 不讀取選項檔案
--no-login-paths 不要從登入路徑檔案讀取登入路徑
--optimize 最佳化資料表
--password 連線至伺服器時要使用的密碼
--password1 連線至伺服器時要使用的第一個多因素驗證密碼
--password2 連線至伺服器時要使用的第二個多因素驗證密碼
--password3 連線至伺服器時要使用的第三個多因素驗證密碼
--pipe 使用具名管道連線至伺服器(僅限 Windows)
--port 連線的 TCP/IP 連接埠號碼
--print-defaults 列印預設選項
--protocol 要使用的傳輸協定
--quick 最快的檢查方法
--repair 執行幾乎可以修復任何問題的修復,除了不唯一且不唯一的主鍵
--server-public-key-path 包含 RSA 公開金鑰的檔案路徑名稱
--shared-memory-base-name 共用記憶體連線的共用記憶體名稱(僅限 Windows)
--silent 靜音模式
--skip-database 從執行的作業中省略此資料庫
--socket 要使用的 Unix socket 檔案或 Windows 具名管道
--ssl-ca 包含受信任 SSL 憑證授權單位清單的檔案
--ssl-capath 包含受信任 SSL 憑證授權單位憑證檔案的目錄
--ssl-cert 包含 X.509 憑證的檔案
--ssl-cipher 允許連線加密的密碼
--ssl-fips-mode 是否在用戶端啟用 FIPS 模式
--ssl-key 包含 X.509 金鑰的檔案
--ssl-mode 與伺服器連線的所需安全性狀態
--ssl-session-data 包含 SSL 工作階段資料的檔案
--ssl-session-data-continue-on-failed-reuse 如果工作階段重複使用失敗是否要建立連線
--tables 覆寫 --databases 或 -B 選項
--tls-ciphersuites 允許加密連線的 TLSv1.3 密碼套件
--tls-sni-servername 用戶端提供的伺服器名稱
--tls-version 允許加密連線的 TLS 協定
--use-frm 用於 MyISAM 資料表的修復作業
--user 連線至伺服器時要使用的 MySQL 使用者名稱
--verbose 詳細模式
--version 顯示版本資訊並結束
--write-binlog 將 ANALYZE、OPTIMIZE、REPAIR 語句記錄到二進位記錄檔。--skip-write-binlog 將 NO_WRITE_TO_BINLOG 新增至這些語句
--zstd-compression-level 使用 zstd 壓縮的伺服器連線的壓縮等級

  • --help-?

    命令列格式 --help

    顯示說明訊息並結束。

  • --all-databases-A

    命令列格式 --all-databases

    檢查所有資料庫中的所有資料表。這與使用 --databases 選項並在命令列上命名所有資料庫相同,但不會檢查 INFORMATION_SCHEMAperformance_schema 資料庫。可以使用 --databases 選項明確命名它們來檢查它們。

  • --all-in-1-1

    命令列格式 --all-in-1

    不是針對每個資料表發出一個語句,而是針對每個資料庫執行一個語句,其中命名了要處理的該資料庫中的所有資料表。

  • --analyze-a

    命令列格式 --analyze

    分析資料表。

  • --auto-repair

    命令列格式 --auto-repair

    如果檢查的資料表已損壞,則自動修復它。任何必要的修復會在檢查完所有資料表後執行。

  • --bind-address=ip_address

    命令列格式 --bind-address=ip_address

    在具有多個網路介面的電腦上,使用此選項來選擇要用於連線至 MySQL 伺服器的介面。

  • --character-sets-dir=dir_name

    命令列格式 --character-sets-dir=dir_name
    類型 目錄名稱

    安裝字元集的目錄。請參閱 章節 12.15,「字元集設定」

  • --check-c

    命令列格式 --check

    檢查資料表是否有錯誤。這是預設作業。

  • --check-only-changed-C

    命令列格式 --check-only-changed

    僅檢查自上次檢查以來已變更或未正確關閉的資料表。

  • --check-upgrade-g

    命令列格式 --check-upgrade

    使用 FOR UPGRADE 選項叫用 CHECK TABLE,以檢查資料表與目前伺服器版本的不相容性。

  • --compress

    命令列格式 --compress[={OFF|ON}]
    已淘汰
    類型 布林值
    預設值 關閉

    如果可能,壓縮用戶端和伺服器之間傳送的所有資訊。請參閱 章節 6.2.8,「連線壓縮控制」

    此選項已淘汰。預期會在未來的 MySQL 版本中移除。請參閱 設定舊版連線壓縮

  • --compression-algorithms=value

    命令列格式 --compression-algorithms=value
    類型 設定
    預設值 未壓縮
    有效值

    zlib

    zstd

    未壓縮

    允許連線至伺服器的壓縮演算法。可用的演算法與 protocol_compression_algorithms 系統變數相同。預設值為 uncompressed

    如需更多資訊,請參閱 章節 6.2.8,「連線壓縮控制」

  • --databases-B

    命令列格式 --databases

    處理指定資料庫中的所有資料表。通常,mysqlcheck 將命令列上的第一個名稱引數視為資料庫名稱,而任何後續名稱視為資料表名稱。使用此選項,它會將所有名稱引數視為資料庫名稱。

  • --debug[=debug_options]-# [debug_options]

    命令列格式 --debug[=debug_options]
    類型 字串
    預設值 d:t:o

    寫入偵錯記錄。典型的 debug_options 字串為 d:t:o,file_name。預設值為 d:t:o

    此選項僅在 MySQL 是使用 WITH_DEBUG 建置時才可用。Oracle 提供的 MySQL 發行二進位檔並非使用此選項建置。

  • --debug-check

    命令列格式 --debug-check
    類型 布林值
    預設值 FALSE

    程式結束時列印一些偵錯資訊。

    此選項僅在 MySQL 是使用 WITH_DEBUG 建置時才可用。Oracle 提供的 MySQL 發行二進位檔並非使用此選項建置。

  • --debug-info

    命令列格式 --debug-info
    類型 布林值
    預設值 FALSE

    程式結束時列印偵錯資訊以及記憶體和 CPU 使用統計資訊。

    此選項僅在 MySQL 是使用 WITH_DEBUG 建置時才可用。Oracle 提供的 MySQL 發行二進位檔並非使用此選項建置。

  • --default-character-set=charset_name

    命令列格式 --default-character-set=charset_name
    類型 字串

    使用 charset_name 作為預設字元集。請參閱第 12.15 節,「字元集設定」

  • --defaults-extra-file=file_name

    命令列格式 --defaults-extra-file=file_name
    類型 檔案名稱

    在全域選項檔案之後,但在使用者選項檔案 (在 Unix 上) 之前讀取此選項檔案。如果檔案不存在或無法存取,則會發生錯誤。如果 file_name 不是絕對路徑名稱,則會以目前目錄為基準進行解譯。

    如需關於此選項和其他選項檔案選項的額外資訊,請參閱第 6.2.2.3 節,「影響選項檔案處理的命令列選項」

  • --defaults-file=file_name

    命令列格式 --defaults-file=file_name
    類型 檔案名稱

    僅使用指定的選項檔案。如果檔案不存在或無法存取,則會發生錯誤。如果 file_name 不是絕對路徑名稱,則會以目前目錄為基準進行解譯。

    例外狀況:即使使用 --defaults-file,用戶端程式仍會讀取 .mylogin.cnf

    如需關於此選項和其他選項檔案選項的額外資訊,請參閱第 6.2.2.3 節,「影響選項檔案處理的命令列選項」

  • --defaults-group-suffix=str

    命令列格式 --defaults-group-suffix=str
    類型 字串

    不只讀取常用的選項群組,也會讀取具有常用名稱和 str 後綴的群組。例如,mysqlcheck 通常會讀取 [client][mysqlcheck] 群組。如果此選項是以 --defaults-group-suffix=_other 給定,mysqlcheck 也會讀取 [client_other][mysqlcheck_other] 群組。

    如需關於此選項和其他選項檔案選項的額外資訊,請參閱第 6.2.2.3 節,「影響選項檔案處理的命令列選項」

  • --extended-e

    命令列格式 --extended

    如果您使用此選項來檢查資料表,它可以確保資料表 100% 一致,但需要很長的時間。

    如果您使用此選項來修復資料表,它會執行擴充修復,不僅可能需要很長的時間才能執行,還可能產生大量垃圾列!

  • --default-auth=plugin

    命令列格式 --default-auth=plugin
    類型 字串

    關於要使用哪個用戶端驗證外掛程式的提示。請參閱第 8.2.17 節,「可插拔驗證」

  • --enable-cleartext-plugin

    命令列格式 --enable-cleartext-plugin
    類型 布林值
    預設值 FALSE

    啟用 mysql_clear_password 明文驗證外掛程式。(請參閱第 8.4.1.3 節,「用戶端明文可插拔驗證」。)

  • --fast-F

    命令列格式 --fast

    僅檢查未正確關閉的資料表。

  • --force-f

    命令列格式 --force

    即使發生 SQL 錯誤也繼續。

  • --get-server-public-key

    命令列格式 --get-server-public-key
    類型 布林值

    從伺服器請求 RSA 金鑰配對式密碼交換所需的公鑰。此選項適用於使用 caching_sha2_password 驗證外掛程式進行驗證的用戶端。對於該外掛程式,除非要求,否則伺服器不會傳送公鑰。對於不使用該外掛程式進行驗證的帳戶,會忽略此選項。如果未使用基於 RSA 的密碼交換 (當用戶端使用安全連線連線到伺服器時),也會忽略此選項。

    如果給定 --server-public-key-path=file_name 並指定有效的公鑰檔案,則其優先於 --get-server-public-key

    如需關於 caching_sha2_password 外掛程式的資訊,請參閱第 8.4.1.1 節,「快取 SHA-2 可插拔驗證」

  • --host=host_name-h host_name

    命令列格式 --host=host_name
    類型 字串
    預設值 localhost

    連線到指定主機上的 MySQL 伺服器。

  • --login-path=name

    命令列格式 --login-path=name
    類型 字串

    .mylogin.cnf 登入路徑檔案中具名的登入路徑讀取選項。登入路徑是一個選項群組,其中包含指定要連線到哪個 MySQL 伺服器以及要驗證為哪個帳戶的選項。若要建立或修改登入路徑檔案,請使用 mysql_config_editor 公用程式。請參閱第 6.6.7 節,「mysql_config_editor — MySQL 設定公用程式」

    如需關於此選項和其他選項檔案選項的額外資訊,請參閱第 6.2.2.3 節,「影響選項檔案處理的命令列選項」

  • --no-login-paths

    命令列格式 --no-login-paths

    跳過從登入路徑檔案讀取選項。

    如需相關資訊,請參閱 --login-path

    如需關於此選項和其他選項檔案選項的額外資訊,請參閱第 6.2.2.3 節,「影響選項檔案處理的命令列選項」

  • --medium-check-m

    命令列格式 --medium-check

    執行比 --extended 操作更快的檢查。這只會找出 99.99% 的所有錯誤,在大多數情況下應該已足夠。

  • --no-defaults

    命令列格式 --no-defaults

    不讀取任何選項檔案。如果程式啟動因從選項檔案讀取不明選項而失敗,可以使用 --no-defaults 來防止讀取這些選項。

    例外狀況是,在所有情況下,都會讀取 .mylogin.cnf 檔案 (如果存在)。即使使用 --no-defaults,這也允許以比在命令列上更安全的方式指定密碼。若要建立 .mylogin.cnf,請使用 mysql_config_editor 公用程式。請參閱第 6.6.7 節,「mysql_config_editor — MySQL 設定公用程式」

    如需關於此選項和其他選項檔案選項的額外資訊,請參閱第 6.2.2.3 節,「影響選項檔案處理的命令列選項」

  • --optimize-o

    命令列格式 --optimize

    最佳化資料表。

  • --password[=password]-p[password]

    命令列格式 --password[=password]
    類型 字串

    用於連線到伺服器的 MySQL 帳戶密碼。密碼值是選擇性的。如果未給定,mysqlcheck 會提示輸入一個密碼。如果給定,--password=-p 與其後面的密碼之間不得有空格。如果未指定任何密碼選項,則預設是不傳送密碼。

    在命令列上指定密碼應視為不安全。若要避免在命令列上給定密碼,請使用選項檔案。請參閱第 8.1.2.1 節,「密碼安全性的終端使用者準則」

    若要明確指定沒有密碼,並且 mysqlcheck 不應提示輸入密碼,請使用 --skip-password 選項。

  • --password1[=pass_val]

    用於連線到伺服器的 MySQL 帳戶多因素驗證因素 1 的密碼。密碼值是選擇性的。如果未給定,mysqlcheck 會提示輸入一個密碼。如果給定,--password1= 與其後面的密碼之間不得有空格。如果未指定任何密碼選項,則預設是不傳送密碼。

    在命令列上指定密碼應視為不安全。若要避免在命令列上給定密碼,請使用選項檔案。請參閱第 8.1.2.1 節,「密碼安全性的終端使用者準則」

    若要明確指定沒有密碼,並且 mysqlcheck 不應提示輸入密碼,請使用 --skip-password1 選項。

    --password1--password 是同義詞,--skip-password1--skip-password 也是同義詞。

  • --password2[=pass_val]

    用於連線到伺服器的 MySQL 帳戶多因素驗證因素 2 的密碼。此選項的語義與 --password1 的語義相似;請參閱該選項的描述以取得詳細資訊。

  • --password3[=pass_val]

    用於連線到伺服器的 MySQL 帳戶多因素驗證因素 3 的密碼。此選項的語義與 --password1 的語義相似;請參閱該選項的描述以取得詳細資訊。

  • --pipe-W

    命令列格式 --pipe
    類型 字串

    在 Windows 上,使用具名管道連線至伺服器。只有在伺服器啟動時啟用 named_pipe 系統變數以支援具名管道連線時,此選項才適用。此外,進行連線的使用者必須是 named_pipe_full_access_group 系統變數所指定之 Windows 群組的成員。

  • --plugin-dir=dir_name

    命令列格式 --plugin-dir=dir_name
    類型 目錄名稱

    要尋找外掛程式的目錄。如果使用 --default-auth 選項指定驗證外掛程式,但 mysqlcheck 找不到它時,請指定此選項。請參閱 第 8.2.17 節「可插拔驗證」

  • --port=port_num, -P port_num

    命令列格式 --port=port_num
    類型 數值
    預設值 3306

    對於 TCP/IP 連線,要使用的連接埠號碼。

  • --print-defaults

    命令列格式 --print-defaults

    列印程式名稱以及它從選項檔取得的所有選項。

    如需關於此選項和其他選項檔案選項的額外資訊,請參閱第 6.2.2.3 節,「影響選項檔案處理的命令列選項」

  • --protocol={TCP|SOCKET|PIPE|MEMORY}

    命令列格式 --protocol=type
    類型 字串
    預設值 [請參閱文字]
    有效值

    TCP

    SOCKET

    PIPE

    MEMORY

    用於連線至伺服器的傳輸協定。當其他連線參數通常會導致使用您不想要的協定時,此選項很有用。關於允許值的詳細資訊,請參閱 第 6.2.7 節「連線傳輸協定」

  • --quick, -q

    命令列格式 --quick

    如果您使用此選項來檢查資料表,它會阻止檢查掃描列以檢查不正確的連結。這是最快的檢查方法。

    如果您使用此選項來修復資料表,它會嘗試僅修復索引樹。這是最快的修復方法。

  • --repair, -r

    命令列格式 --repair

    執行可以修復幾乎所有內容的修復,除了不唯一的唯一鍵。

  • --server-public-key-path=file_name

    命令列格式 --server-public-key-path=file_name
    類型 檔案名稱

    PEM 格式的檔案路徑名稱,其中包含伺服器在 RSA 金鑰配對式密碼交換中所需的用戶端副本公鑰。此選項適用於使用 sha256_passwordcaching_sha2_password 驗證外掛程式進行驗證的用戶端。對於不使用其中一個外掛程式進行驗證的帳戶,此選項會被忽略。如果未使用以 RSA 為基礎的密碼交換,也會被忽略,例如當用戶端使用安全連線連線至伺服器時。

    如果給定 --server-public-key-path=file_name 並指定有效的公鑰檔案,則其優先於 --get-server-public-key

    對於 sha256_password,只有在使用 OpenSSL 建置 MySQL 時,此選項才適用。

    關於 sha256_passwordcaching_sha2_password 外掛程式的資訊,請參閱 第 8.4.1.2 節「SHA-256 可插拔驗證」第 8.4.1.1 節「快取 SHA-2 可插拔驗證」

  • --shared-memory-base-name=name

    命令列格式 --shared-memory-base-name=name
    平台特定 Windows

    在 Windows 上,用於使用共享記憶體連線至本機伺服器的共享記憶體名稱。預設值為 MYSQL。共享記憶體名稱區分大小寫。

    只有在伺服器啟動時啟用 shared_memory 系統變數以支援共享記憶體連線時,此選項才適用。

  • --silent, -s

    命令列格式 --silent

    靜音模式。僅列印錯誤訊息。

  • --skip-database=db_name

    命令列格式 --skip-database=db_name

    不要在 mysqlcheck 執行的作業中包含具名的資料庫(區分大小寫)。

  • --socket=path, -S path

    命令列格式 --socket={file_name|pipe_name}
    類型 字串

    對於連線到 localhost,要使用的 Unix socket 檔案,或在 Windows 上,要使用的具名管道名稱。

    在 Windows 上,只有在伺服器啟動時啟用 named_pipe 系統變數以支援具名管道連線時,此選項才適用。此外,進行連線的使用者必須是 named_pipe_full_access_group 系統變數所指定之 Windows 群組的成員。

  • --ssl*

    開頭為 --ssl 的選項會指定是否使用加密連線至伺服器,並指示在哪裡尋找 SSL 金鑰和憑證。請參閱加密連線的命令選項

  • --ssl-fips-mode={OFF|ON|STRICT}

    命令列格式 --ssl-fips-mode={OFF|ON|STRICT}
    已淘汰
    類型 列舉
    預設值 關閉
    有效值

    關閉

    ON

    STRICT

    控制是否在用戶端啟用 FIPS 模式。 --ssl-fips-mode 選項與其他 --ssl-xxx 選項不同,它不是用於建立加密連線,而是用於影響允許哪些加密作業。請參閱 第 8.8 節「FIPS 支援」

    允許這些 --ssl-fips-mode

    • OFF:停用 FIPS 模式。

    • ON:啟用 FIPS 模式。

    • STRICT:啟用「嚴格」FIPS 模式。

    注意

    如果 OpenSSL FIPS 物件模組不可用,則 --ssl-fips-mode 唯一允許的值是 OFF。在這種情況下,將 --ssl-fips-mode 設定為 ONSTRICT 會導致用戶端在啟動時產生警告,並在非 FIPS 模式下運作。

    此選項已過時。預計會在未來版本的 MySQL 中移除。

  • --tables

    命令列格式 --tables

    覆寫 --databases-B 選項。選項後的所有名稱引數都會視為資料表名稱。

  • --tls-ciphersuites=ciphersuite_list

    命令列格式 --tls-ciphersuites=ciphersuite_list
    類型 字串

    使用 TLSv1.3 加密連線時允許的加密套件。值是一個或多個以冒號分隔的加密套件名稱清單。此選項可命名的加密套件取決於用於編譯 MySQL 的 SSL 程式庫。如需詳細資訊,請參閱 第 8.3.2 節「加密連線 TLS 協定和加密」

  • --tls-sni-servername=server_name

    命令列格式 --tls-sni-servername=server_name
    類型 字串

    指定時,會使用 mysql_options()MYSQL_OPT_TLS_SNI_SERVERNAME 選項,將名稱傳遞至 libmysqlclient C API 程式庫。伺服器名稱不區分大小寫。若要顯示用戶端為目前工作階段指定的伺服器名稱(如果有的話),請檢查 Tls_sni_server_name 狀態變數。

    伺服器名稱指示 (SNI) 是 TLS 協定的延伸功能(必須使用 TLS 延伸功能編譯 OpenSSL,此選項才能運作)。SNI 的 MySQL 實作僅代表用戶端。

  • --tls-version=protocol_list

    命令列格式 --tls-version=protocol_list
    類型 字串
    預設值

    TLSv1,TLSv1.1,TLSv1.2,TLSv1.3 (OpenSSL 1.1.1 或更高版本)

    TLSv1,TLSv1.1,TLSv1.2 (否則)

    加密連線允許的 TLS 協定。值是一個或多個以逗號分隔的協定名稱清單。此選項可命名的協定取決於用於編譯 MySQL 的 SSL 程式庫。如需詳細資訊,請參閱 第 8.3.2 節「加密連線 TLS 協定和加密」

  • --use-frm

    命令列格式 --use-frm

    對於 MyISAM 資料表的修復作業,從資料字典取得資料表結構,以便即使 .MYI 標頭已損壞,仍可修復資料表。

  • --user=user_name, -u user_name

    命令列格式 --user=user_name,
    類型 字串

    用於連線至伺服器的 MySQL 帳戶使用者名稱。

  • --verbose, -v

    命令列格式 --verbose

    詳細模式。列印程式運作各個階段的相關資訊。

  • --version, -V

    命令列格式 --version

    顯示版本資訊並結束。

  • --write-binlog

    命令列格式 --write-binlog

    此選項預設為啟用,因此由 mysqlcheck 產生的 ANALYZE TABLEOPTIMIZE TABLEREPAIR TABLE 語句會被寫入二進制日誌。使用 --skip-write-binlog 會導致 NO_WRITE_TO_BINLOG 被添加到語句中,使其不被記錄。當這些語句不應該被發送到副本或在使用二進制日誌從備份恢復時執行時,請使用 --skip-write-binlog

  • --zstd-compression-level=level

    命令列格式 --zstd-compression-level=#
    類型 整數

    用於與伺服器建立連線時,使用 zstd 壓縮演算法的壓縮等級。允許的等級為 1 到 22,較大的數值表示壓縮等級越高。預設的 zstd 壓縮等級為 3。壓縮等級設定對未使用 zstd 壓縮的連線沒有影響。

    如需更多資訊,請參閱 章節 6.2.8,「連線壓縮控制」