MySQL 通知設定
本頁說明將 MYSQL 服務設定為 儲存貯體通知目標的設定。請參閱 將事件發佈到 MySQL,以取得有關使用這些設定的教學課程。
您可以使用以下方式建立或修改設定:
在啟動或重新啟動 MinIO 伺服器之前,在主機系統上定義環境變數。請參閱您作業系統的文件,以了解如何定義環境變數。
使用
mc admin config set
使用組態設定。使用 MinIO 主控台的 管理員 > 設定 頁面使用組態設定。
如果您同時定義了環境變數和類似的組態設定,MinIO 會使用環境變數的值。
某些設定只有環境變數或組態設定,但沒有兩者都有。
重要
每個組態設定都控制著 MinIO 的基本行為和功能。MinIO 強烈建議在套用至生產環境之前,先在較低的環境(例如 DEV 或 QA)中測試組態變更。
多個 MYSQL 目標
您可以在頂層金鑰上附加每個相關 MySQL 設定集的唯一識別碼 _ID
,以指定多個 MySQL 服務端點。
範例
下列命令分別將兩個不同的 MySQL 服務端點設定為 PRIMARY
和 SECONDARY
set MINIO_NOTIFY_MYSQL_ENABLE_PRIMARY="on"
set MINIO_NOTIFY_MYSQL_DSN_STRING_PRIMARY="username:password@tcp(mysql.example.com:3306)/miniodb"
set MINIO_NOTIFY_MYSQL_TABLE_PRIMARY="minioevents"
set MINIO_NOTIFY_MYSQL_FORMAT_PRIMARY="namespace"
set MINIO_NOTIFY_MYSQL_ENABLE_SECONDARY="on"
set MINIO_NOTIFY_MYSQL_DSN_STRING_SECONDARY="username:password@tcp(mysql.example.com:3306)/miniodb"
set MINIO_NOTIFY_MYSQL_TABLE_SECONDARY="minioevents"
set MINIO_NOTIFY_MYSQL_FORMAT_SECONDARY="namespace"
使用這些設定,MINIO_NOTIFY_MYSQL_ENABLE_PRIMARY
表示環境變數與 ID 為 PRIMARY
的 MySQL 服務端點相關聯。
mc admin config set notify_mysql:primary \
dsn_string="username:password@tcp(mysql.example.com:3306)/miniodb"
table="minioevents" \
format="namespace" \
[ARGUMENT=VALUE ...]
mc admin config set notify_mysql:secondary \
dsn_string="username:password@tcp(mysql.example.com:3306)/miniodb"
table="minioevents" \
format="namespace" \
[ARGUMENT=VALUE ...]
設定
啟用
必要
指定 on
以啟用將儲存貯體通知發佈到 MySQL 服務端點。
預設為 off
。
如果設定為 on
,則需要指定以下其他環境變數
用於定義 MySQL 服務端點以與 MinIO 儲存貯體通知搭配使用的頂層組態金鑰。
使用 mc admin config set
設定或更新 MySQL 服務端點。每個目標都必須包含以下引數:
以空格 (" "
) 分隔的列表形式指定額外的選用引數。
mc admin config set notify_mysql \
dsn_string="username:password@tcp(mysql.example.com:3306)/miniodb"
table="minioevents" \
format="namespace" \
[ARGUMENT="VALUE"] ... \
資料來源名稱 (DSN) 字串
必要
指定 MySQL 服務端點的資料來源名稱 (DSN)。MinIO 預期使用以下格式:
<user>:<password>@tcp(<host>:<port>)/<database>
例如:
"username:password@tcp(mysql.example.com:3306)/miniodb"
在版本 RELEASE.2023-05-27T05-56-19Z 中變更:MinIO 會在新增目標之前檢查指定的 URL 是否正常 (是否可解析且可連線)。如果現有的目標離線,MinIO 不再阻止新增新的通知目標。
資料表
必要
指定 MinIO 發佈事件通知的 MySQL 資料表名稱。
格式
必要
指定寫入 MySQL 服務端點的事件資料格式。MinIO 支援以下值:
namespace
針對每個儲存桶事件,MinIO 會建立一個 JSON 文件,其中包含來自事件的儲存桶和物件名稱作為文件 ID,以及實際事件作為文件主體的一部分。對該物件的其他更新會修改該物件的現有資料表項目。同樣地,刪除物件也會刪除對應的資料表項目。
access
針對每個儲存桶事件,MinIO 會建立一個包含事件詳細資訊的 JSON 文件,並將其附加到具有 MySQL 產生隨機 ID 的資料表中。對物件的其他更新會產生新的索引項目,而現有項目保持不變。
最大開啟連線數
選用
指定到 MySQL 資料庫的最大開啟連線數。
預設值為 2
。
佇列目錄
選用
指定目錄路徑,以啟用 MinIO 的持續性事件儲存,用於儲存未傳遞的訊息,例如 /opt/minio/events
。
當 MySQL 伺服器/代理離線時,MinIO 會將未傳遞的事件儲存在指定的儲存中,並在連線恢復時重新播放儲存的事件。
佇列限制
選用
指定未傳遞訊息的最大限制。預設值為 100000
。
註解
選用
指定與 MySQL 組態關聯的註解。