文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (美國信紙) - 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 參考手冊  /  ...  /  管理連線管理

7.1.12.2 管理連線管理

連線容量管理中所述,為了允許在用於一般連線的介面上已經建立 max_connections 連線時,仍然能夠執行管理操作,MySQL 伺服器允許具有 CONNECTION_ADMIN 權限 (或已棄用的 SUPER 權限) 的使用者進行單一管理連線。

伺服器也允許為管理連線專用一個 TCP/IP 連接埠,如下列章節所述。

管理介面特性

管理連線介面具有以下特性:

  • 只有在啟動時設定 admin_address 系統變數以指示其 IP 位址時,伺服器才會啟用介面。如果未設定 admin_address,則伺服器不會維護任何管理介面。

  • admin_port 系統變數會指定介面 TCP/IP 連接埠號碼 (預設為 33062)。

  • 管理連線的數量沒有限制,但只允許具有 SERVICE_CONNECTION_ADMIN 權限的使用者連線。

  • create_admin_listener_thread 系統變數允許 DBA 在啟動時選擇管理介面是否具有自己的獨立執行緒。預設值為 OFF;也就是說,主要介面上一般連線的管理執行緒也會處理管理介面的連線。

伺服器 my.cnf 檔案中的這些行會在迴路介面上啟用管理介面,並將其設定為使用連接埠號碼 33064 (也就是說,與預設值不同的連接埠)

[mysqld]
admin_address=127.0.0.1
admin_port=33064

MySQL 用戶端程式會透過指定適當的連線參數來連線到主要介面或管理介面。如果在本機主機上執行的伺服器針對主要和管理介面使用預設 TCP/IP 連接埠號碼 3306 和 33062,則這些命令會連線到這些介面

mysql --protocol=TCP --port=3306
mysql --protocol=TCP --port=33062
管理介面對加密連線的支援

管理介面具有其自己的加密連線組態參數。這些參數對應於主要介面參數,但允許獨立設定管理介面的加密連線

admin_tls_xxxadmin_ssl_xxx 系統變數與 tls_xxxssl_xxx 系統變數類似,但它們會為管理介面而非主要介面設定 TLS 環境。

如需有關設定連線加密支援的一般資訊,請參閱第 8.3.1 節「設定 MySQL 以使用加密連線」第 8.3.2 節「加密連線 TLS 通訊協定和密碼」。該討論是針對主要連線介面撰寫的,但管理連線介面的參數名稱類似。將該討論與以下說明一起使用,這些說明提供特定於管理介面的資訊。

管理介面的 TLS 組態遵循以下規則

  • 管理介面支援加密連線。對於介面上的連線,適用的 TLS 環境取決於是否設定任何非預設的管理 TLS 參數

    • 如果所有管理 TLS 參數都具有預設值,則管理介面會使用與主要介面相同的 TLS 環境。

    • 如果任何管理介面的 TLS 參數具有非預設值,則管理介面會使用其自身參數定義的 TLS 環境。(如果任何 admin_tls_xxxadmin_ssl_xxx 系統變數設定為與其預設值不同的值,就會發生這種情況。) 如果無法從這些參數建立有效的 TLS 環境,則管理介面會回退到主介面的 TLS 環境。

  • 可以透過將 admin_tls_version 系統變數設定為空值來停用與管理介面的加密連線,以表示不支援任何 TLS 版本。例如,伺服器 my.cnf 檔案中的以下幾行會停用管理介面上的加密連線

    [mysqld]
    admin_tls_version=''

範例

  • 伺服器 my.cnf 檔案中的此組態會啟用管理介面,但不會設定任何特定於該介面的 TLS 參數

    [mysqld]
    admin_address=127.0.0.1

    因此,管理介面支援加密連線(因為在啟用管理介面時預設支援加密),並使用主介面的 TLS 環境。當客戶端連線到管理介面時,它們應使用與主介面上普通連線相同的憑證和金鑰檔案。例如(在單行中輸入命令)

    mysql --protocol=TCP --port=33062
          --ssl-ca=ca.pem
          --ssl-cert=client-cert.pem
          --ssl-key=client-key.pem
  • 此伺服器組態會啟用管理介面,並設定特定於該介面的 TLS 憑證和金鑰檔案參數

    [mysqld]
    admin_address=127.0.0.1
    admin_ssl_ca=admin-ca.pem
    admin_ssl_cert=admin-server-cert.pem
    admin_ssl_key=admin-server-key.pem

    因此,管理介面支援使用其自身的 TLS 環境進行加密連線。當客戶端連線到管理介面時,它們應使用特定於該介面的憑證和金鑰檔案。例如(在單行中輸入命令)

    mysql --protocol=TCP --port=33062
          --ssl-ca=admin-ca.pem
          --ssl-cert=admin-client-cert.pem
          --ssl-key=admin-client-key.pem