OceanBase學習之路53|多租戶管理引數如何設定?
OceanBase 資料庫的配置項分為叢集級配置項和租戶級配置項。您可以透過配置項的設定使 OceanBase 資料庫的行為符合您業務的要求。
引數分類
OceanBase 資料庫的配置項分為叢集級配置項和租戶級配置項。透過配置項的設定可以控制整個叢集的負載均衡、合併時間、合併方式、資源分配和模組開關等功能。
-
叢集級配置項:作用範圍為整個叢集所有 OBServer。
-
租戶級配置項:作用範圍為當前租戶在叢集內所在的 OBServer。
名稱以 "_" 開頭的配置項稱為隱藏配置項,如:
_ob_max_thread_num
。僅供開發人員在故障排查或緊急運維時使用。本文不對隱藏配置項進行詳細介紹,下文中的配置項均不包含隱藏配置項。
不同租戶對配置項的檢視和修改級別如下表所示:
租戶型別 | 引數檢視 | 引數設定 |
---|---|---|
系統租戶 | 叢集級配置項、租戶級配置項
說明 |
叢集級配置項、租戶級配置項
說明 |
普通租戶 | 叢集級配置項和本租戶的租戶級配置項 | 本租戶的租戶級配置項 |
當前 OceanBase 資料庫中配置項的主要資料型別及其相關說明如下表所示:
資料型別 | 說明 |
---|---|
BOOL | boolean 型別(布林),支援 true/false。 |
CAPACITY | 容量單位,支援 b (位元組)、k (KB,千位元組)、m (MB,百萬位元組)、 g (GB,10億位元組)、t (TB,萬億位元組)、p(PB,千萬億位元組)。單位不區分大小寫字母,預設為 m。 |
DOUBLE | 雙精度浮點數,佔用 64 bit 儲存空間,精確到小數點後 15 位,有效位數為 16位 。 |
INT | int64 整型,支援正負整數和 0。 |
MOMENT | 時刻。格式為
hh:mm (例如
02:00 );或者特殊值
disable ,表示不指定時間。目前僅用於
major_freeze_duty_time 引數。 |
STRING | 字串。使用者輸入的字串的值。 |
STRING_LIST | 字串列表,即以分號 (;)分隔的多個字串。 |
TIME | 時間型別。支援 us (微秒)、ms (毫秒)、s (秒), m (分鐘)、h (小時)、d (天)等單位。如果不加字尾,預設為秒(s)。單位不區分大小寫字母。 |
透過 SQL 語句修改配置項
修改配置項的 SQL 語法如下:
ALTER SYSTEM [SET] parameter_name = expression [SCOPE = {SPFILE | BOTH}] [COMMENT [=] 'text'] [ TENANT [=] ALL|tenant_name ] {SERVER [=] 'ip:port' | ZONE [=] 'zone'};
引數說明:
-
parameter_name
:指定要修改的配置項名稱。 -
expression
:指定修改後的配置項的值。 -
COMMENT 'text'
:用於新增關於本次修改的註釋。該引數為可選,建議不要省略。 -
SCOPE
:指定本次配置項修改的生效範圍,預設為BOTH
。-
SPFILE
:表示只修改內部表中的配置項值,當 OBServer 重啟以後才生效。僅重啟生效的配置項支援。 -
BOTH
:表示既修改內部表中的配置項值,又修改記憶體中的配置項值,修改立即生效,且 OBServer 重啟以後配置值仍然生效。
-
-
TENANT
:用於在系統租戶下,修改所有或指定租戶的租戶級配置項。-
ALL
:所有租戶。 -
tenant_name
:指定租戶。
-
-
SERVER
:只修改指定 Server 例項的某個配置項。 -
ZONE
:表明本配置項的修改針對指定叢集的特定 Server 型別,否則,針對所有叢集的特定 Server 型別。
說明
- 同時修改多個配置項時,以逗號(,)分隔。
- 叢集級配置項不能透過普通租戶設定,也不可以透過系統租戶(即
sys
租戶) 指定為普通租戶設定,僅支援在系統租戶下配置。例如,執行ALTER SYSTEM SET memory_limit='100G' TENANT='test_tenant'
語句將導致報錯,因為memory_limit
是叢集級配置項。- 租戶級配置項可以直接在本租戶下修改,也可以在系統租戶下透過指定
TENANT
關鍵字來修改。ALTER SYSTEM
語句不能同時指定 Zone 和 OBServer。並且在指定 Zone 時,僅支援指定一個 Zone;指定 OBServer 時,僅支援指定一個 OBServer。如果修改時,不指定 Zone 也不指定 OBServer,則叢集級配置項會在整個叢集所有 OBServer 上生效;租戶級配置項會在當前租戶在叢集內所在的 OBServer 上生效。- 確認一個配置項為叢集級別還是租戶級別,可根據
SHOW PARAMETERS
語句執行結果中的scope
列對應的值來判斷:scope
值為CLUSTER
則表示為叢集級配置項。scope
值為TENANT
則表示為租戶級配置項。
示例
修改
log_disk_utilization_threshold
配置項的示例如下:
obclient> ALTER SYSTEM SET log_disk_utilization_threshold = 20;
修改指定 Zone 的
log_disk_utilization_threshold
配置項的示例如下:
obclient> ALTER SYSTEM SET log_disk_utilization_threshold = 20 ZONE='z1';
修改指定 OBServer 的
log_disk_utilization_threshold
配置項的示例如下:
obclient> ALTER SYSTEM SET log_disk_utilization_threshold = 20 SERVER='XXX.XXX.XXX.XXX:XXXXX';
在系統租戶下,修改所有或指定租戶的租戶級配置項。示例如下:
obclient> ALTER SYSTEM SET log_disk_utilization_threshold = 20 TENANT='ALL'; obclient> ALTER SYSTEM SET log_disk_utilization_threshold = 20 TENANT='MYSQL';
說明
執行成功以後,所有被指定租戶的配置項均會被修改。
透過 SQL 語句檢視配置項
檢視配置項的 SQL 語法如下:
SHOW PARAMETERS [LIKE 'pattern' | WHERE expr] [TENANT = tenant_name]
說明
- 系統租戶下,可以檢視本租戶的租戶級配置項和叢集級配置項資訊。同時,可以透過指定
TENANT
關鍵字來檢視指定租戶的配置項資訊。- 普通租戶下,可以檢視本租戶的租戶級配置項以及系統租戶的叢集級配置項資訊。
WHERE expr
中可以指定的列屬性與SHOW PARAMETERS
返回結果中的列屬性一致。
透過
SHOW PARAMETERS
語句檢視配置項的示例如下:
obclient> SHOW PARAMETERS WHERE scope = 'tenant'; obclient> SHOW PARAMETERS WHERE svr_ip != 'XXX.XXX.XXX.XXX'; obclient> SHOW PARAMETERS WHERE INFO like '%ara%'; obclient> SHOW PARAMETERS LIKE 'large_query_threshold'; +-------+----------+-----------------+----------+-----------------------+-----------+-------+------------------------------------------------------------------------------------------------------------------------------+---------+---------+---------+-------------------+ | zone | svr_type | svr_ip | svr_port | name | data_type | value | info | section | scope | source | edit_level | +-------+----------+-----------------+----------+-----------------------+-----------+-------+------------------------------------------------------------------------------------------------------------------------------+---------+---------+---------+-------------------+ | zone1 | observer | XXX.XXX.XXX.XXX | 2882 | large_query_threshold | NULL | 5s | threshold for execution time beyond which a request may be paused and rescheduled as a \'large request\'. Range: [1ms, +∞) | TENANT | CLUSTER | DEFAULT | DYNAMIC_EFFECTIVE | +-------+----------+-----------------+----------+-----------------------+-----------+-------+------------------------------------------------------------------------------------------------------------------------------+---------+---------+---------+-------------------+ 1 row in set (0.01 sec)
返回結果中的列屬性如下表所示:
列名 | 含義 |
---|---|
zone | 所在的 Zone |
svr_type | 機器型別 |
svr_ip | 機器 IP |
svr_port | 機器埠 |
name | 配置項名 |
data_type | 配置項資料型別,包括
NUMBER 、
STRING 、
CAPACITY 等 |
value | 配置項值
說明 由於在修改配置項值時,支援修改指定 Zone 或 Server 的配置項值,故不同 Zone 或 Server 對應的配置項的值可能不同。 |
info | 配置項的說明資訊 |
section | 配置項所屬的分類:
|
scope | 配置項範圍屬性:
|
source | 當前值來源:
|
edit_level | 定義該配置項的修改行為:
|
更多資訊
更多配置項參考資訊,請參見《系統參考》中的 系統配置項 。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70026075/viewspace-2932560/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- OceanBase學習之路54|如何配置多租戶管理?
- OceanBase學習之路13|體驗多租戶特性
- OceanBase學習之路6|透過 Obclient 連線 OceanBase 租戶client
- OceanBase學習之路7|透過 MySQL 客戶端連線 OceanBase 租戶MySql客戶端
- OceanBase學習之路40|如何將資源池分配給租戶?
- OceanBase學習之路52|如何透過系統變數進行設定?變數
- OceanBase學習之路48|最佳效能引數的配置參考
- OceanBase學習之路49|最小資源引數配置是什麼?
- OceanBase學習之路50|預設生產引數的建議配置是什麼?
- 技術分享 | OceanBase 資源及租戶管理
- Part II 配置和管理多租戶環境概述-Oracle多租戶管理員指南Oracle
- OceanBase學習之路47|什麼是資源管理?
- OceanBase學習之路51|常用的系統配置引數及系統變數有哪些?變數
- 多租戶
- 如何理解多租戶架構?架構
- 4.2.1.3 學習如何管理初始化引數
- OceanBase學習之路38|如何合併資源池?
- 如何針對多租戶 SaaS 使用案例擴充套件機器學習推理套件機器學習
- OceanBase學習之路45|如何檢視資源單元配置?
- 1.2.3. 多租戶管理帶來的好處
- 3 配置和管理多租戶環境的概述
- Oracle多租戶管理員指南-CDB共性概念03Oracle
- 技術分享 | OceanBase 租戶延遲刪除
- OceanBase學習之路3 |SpringJDBC 連線示例SpringJDBC
- OceanBase學習之路4|SpringBoot 連線示例Spring Boot
- OceanBase學習之路9|連線方式概述
- OceanBase學習之路15|體驗 Operational OLAP
- golang學習之路之函式可變引數Golang函式
- springmvc引數設定預設值,多地址請求SpringMVC
- 多租戶解析與Demo
- 大資料體系下的多租戶管理方案大資料
- MyBatis-Plus 實現多租戶管理的實踐MyBatis
- Part III PDB建立概述-Oracle多租戶管理員指南Oracle
- OceanBase學習之路43|如何刪除不再使用的資源單元?
- OceanBase學習之路5|C 應用程式連線 OceanBase 資料庫資料庫
- OceanBase學習之路8|Java 應用程式連線 OceanBase 資料庫Java資料庫
- 深度學習煉丹-超引數設定和網路訓練深度學習
- OceanBase 原始碼解讀(五):租戶的一生原始碼