本節中的清單提供有關在 [ndbd]
或 [ndbd default]
區段的 config.ini
檔案中,用於設定 NDB 叢集資料節點的參數資訊。有關這些參數的詳細說明和其他額外資訊,請參閱第 25.4.3.6 節「定義 NDB 叢集資料節點」。
這些參數也適用於 ndbmtd,ndbd 的多執行緒版本。以下為專用於 ndbmtd 的參數清單。
Arbitration
:在節點失敗時,應該如何執行仲裁以避免腦裂問題。ArbitrationTimeout
:資料庫分割區等待仲裁訊號的最大時間(毫秒)。BackupDataBufferSize
:備份的資料緩衝區預設大小(以位元組為單位)。BackupDataDir
:儲存備份的路徑。請注意,字串 '/BACKUP' 始終附加到此設定,因此 *實際* 預設值為 FileSystemPath/BACKUP。BackupDiskWriteSpeedPct
:設定資料節點分配的最大寫入速度(MaxDiskWriteSpeed)百分比,以在啟動備份時為 LCP 保留。BackupLogBufferSize
:備份的日誌緩衝區預設大小(以位元組為單位)。BackupMaxWriteSize
:備份所做的檔案系統寫入最大大小(以位元組為單位)。BackupMemory
:每個節點分配給備份的總記憶體(以位元組為單位)。BackupReportFrequency
:備份期間備份狀態報告的頻率,以秒為單位。BackupWriteSize
:備份所做的檔案系統寫入預設大小(以位元組為單位)。BatchSizePerLocalScan
:用於計算使用保持鎖定進行掃描的鎖定記錄數。BuildIndexThreads
:在系統或節點重新啟動期間用於建立排序索引的執行緒數。當執行 ndb_restore --rebuild-indexes 時也適用。將此參數設定為 0 會停用排序索引的多執行緒建立。CompressedBackup
:使用 zlib 壓縮寫入的備份。CompressedLCP
:使用 zlib 寫入壓縮的 LCP。ConnectCheckIntervalDelay
:資料節點連線檢查階段之間的時間。資料節點在 1 個間隔後被視為可疑,且在 2 個間隔後沒有回應則視為失效。CrashOnCorruptedTuple
:啟用後,每當偵測到損毀的元組時,就會強制節點關閉。DataDir
:此節點的資料目錄。DataMemory
:每個資料節點上分配用於儲存資料的位元組數;受限於可用的系統 RAM 和 IndexMemory 的大小。DefaultHashMapSize
:設定用於表格雜湊對應的大小(以儲存桶為單位)。支援三個值:0、240 和 3840。DictTrace
:啟用 DBDICT 除錯;適用於 NDB 開發。DiskDataUsingSameDisk
:如果磁碟資料表格空間位於不同的實體磁碟上,則設定為 false。DiskIOThreadPool
:用於檔案存取的非綁定執行緒數,僅適用於磁碟資料。Diskless
:在不使用磁碟的情況下執行。DiskPageBufferEntries
:在 DiskPageBufferMemory 中要分配的記憶體;非常大的磁碟交易可能需要增加此值。DiskPageBufferMemory
:每個資料節點上分配給磁碟頁面緩衝區快取的位元組數。DiskSyncSize
:強制同步之前寫入檔案的資料量。EnablePartialLcp
:啟用部分 LCP (true);如果停用 (false),所有 LCP 都會寫入完整檢查點。EnableRedoControl
:啟用用於控制重做日誌用量的自我調整檢查點速度。EncryptedFileSystem
:加密本機檢查點和表格空間檔案。實驗性;不支援於正式環境。EventLogBufferSize
:資料節點中 NDB 日誌事件的循環緩衝區大小。ExecuteOnComputer
:引用先前定義的 COMPUTER 字串。ExtraSendBufferMemory
:除了 TotalSendBufferMemory 或 SendBufferMemory 分配的記憶體之外,用於傳送緩衝區的記憶體。預設值 (0) 允許最多 16MB。FileSystemPath
:資料節點儲存其資料的目錄路徑(目錄必須存在)。FileSystemPathDataFiles
:資料節點儲存其磁碟資料檔案的目錄路徑。如果設定,則預設值為 FilesystemPathDD;否則,如果設定 FilesystemPath,則使用它;否則,使用 DataDir 的值。FileSystemPathDD
:資料節點儲存其磁碟資料和復原檔案的目錄路徑。如果設定,則預設值為 FileSystemPath;否則,如果設定 FilesystemPath,則使用它;否則,使用 DataDir 的值。FileSystemPathUndoFiles
:資料節點儲存其磁碟資料復原檔案的目錄路徑。如果設定,則預設值為 FilesystemPathDD;否則,如果設定 FilesystemPath,則使用它;否則,使用 DataDir 的值。FragmentLogFileSize
:每個重做日誌檔案的大小。HeartbeatIntervalDbApi
:API 節點-資料節點之間的心跳間隔。(API 連線在錯過 3 個心跳後關閉)。HeartbeatIntervalDbDb
:資料節點到資料節點之間的心跳間隔;在錯過 3 個心跳後,資料節點被視為失效。HeartbeatOrder
:設定資料節點檢查彼此心跳的順序,以判斷給定的節點是否仍處於活動狀態並連線到叢集。所有資料節點都必須為零,或所有資料節點都必須為不同的非零值;請參閱文件以取得進一步指南。HostName
:此資料節點的主機名稱或 IP 位址。IndexMemory
:每個資料節點上分配用於儲存索引的位元組數;受限於可用的系統 RAM 和 DataMemory 的大小。IndexStatAutoCreate
:啟用/停用在建立索引時自動收集統計資訊。IndexStatAutoUpdate
:監控索引的變更並觸發自動統計資訊更新。IndexStatSaveScale
:用於決定儲存的索引統計資訊大小的縮放因子。IndexStatSaveSize
:每個索引儲存的統計資訊的最大大小(以位元組為單位)。IndexStatTriggerPct
:索引統計資訊更新的 DML 操作的變更閾值百分比。該值會被 IndexStatTriggerScale 縮小。IndexStatTriggerScale
:對於大型索引,將 IndexStatTriggerPct 縮小此量,乘以索引大小的以 2 為底的對數。設定為 0 以停用縮放。IndexStatUpdateDelay
:給定索引的自動索引統計資訊更新之間的最小延遲。0 表示無延遲。InitFragmentLogFiles
:使用稀疏或完整格式初始化片段日誌檔案。InitialLogFileGroup
:描述初始啟動期間建立的日誌檔案群組。請參閱文件以了解格式。InitialNoOfOpenFiles
:每個資料節點開啟的初始檔案數。(每個檔案建立一個執行緒)。InitialTablespace
:描述初始啟動期間建立的表空間。請參閱文件以了解格式。InsertRecoveryWork
:用於插入列的 RecoveryWork 的百分比;除非正在使用部分本地檢查點,否則無效。KeepAliveSendInterval
:資料節點之間鏈路上保持活動訊號的時間間隔,以毫秒為單位。設定為 0 以停用。LateAlloc
:在與管理伺服器建立連線後配置記憶體。LcpScanProgressTimeout
:在為了確保全系統 LCP 進度而關閉節點之前,本地檢查點片段掃描可以停滯的最長時間。使用 0 以停用。LocationDomainId
:將此資料節點指派給特定的可用性網域或區域。0(預設)表示未設定。LockExecuteThreadToCPU
:以逗號分隔的 CPU ID 清單。LockMaintThreadsToCPU
:CPU ID,指示哪個 CPU 執行維護執行緒。LockPagesInMainMemory
:0=停用鎖定,1=在記憶體配置後鎖定,2=在記憶體配置前鎖定。LogLevelCheckpoint
:列印到 stdout 的本地和全域檢查點資訊的日誌層級。LogLevelCongestion
:列印到 stdout 的擁塞資訊層級。LogLevelConnection
:列印到 stdout 的節點連線/中斷連線資訊層級。LogLevelError
:列印到 stdout 的傳輸器、心跳錯誤。LogLevelInfo
:列印到 stdout 的心跳和日誌資訊。LogLevelNodeRestart
:列印到 stdout 的節點重新啟動和節點失敗資訊層級。LogLevelShutdown
:列印到 stdout 的節點關閉資訊層級。LogLevelStartup
:列印到 stdout 的節點啟動資訊層級。LogLevelStatistic
:列印到 stdout 的交易、操作和傳輸器資訊層級。LongMessageBuffer
:每個資料節點上為內部長訊息配置的位元組數。MaxAllocate
:不再使用;沒有任何效果。MaxBufferedEpochs
:訂閱節點可以落後(未處理的 Epoch)的允許數量。超出此值會導致落後的訂閱者斷線。MaxBufferedEpochBytes
:為緩衝 Epoch 配置的位元組總數。MaxDiskDataLatency
:開始中止交易之前,允許的最大磁碟存取平均延遲 (ms)。MaxDiskWriteSpeed
:當沒有重新啟動正在進行時,LCP 和備份可以寫入的最大位元組數/秒。MaxDiskWriteSpeedOtherNodeRestart
:當另一個節點正在重新啟動時,LCP 和備份可以寫入的最大位元組數/秒。MaxDiskWriteSpeedOwnRestart
:當此節點正在重新啟動時,LCP 和備份可以寫入的最大位元組數/秒。MaxFKBuildBatchSize
:用於建立外鍵的最大掃描批次大小。增加此值可能會加快建立外鍵的速度,但也會影響正在進行的流量。MaxDMLOperationsPerTransaction
:限制交易大小;如果交易需要超過這麼多 DML 操作,則中止交易。MaxLCPStartDelay
:LCP 在將自己放入佇列以平行復原表資料之前,輪詢檢查點互斥鎖的時間(以秒為單位),以允許其他資料節點完成中繼資料同步。MaxNoOfAttributes
:建議資料庫中儲存的屬性總數(所有表的總和)。MaxNoOfConcurrentIndexOperations
:可以在一個資料節點上同時執行的索引操作總數。MaxNoOfConcurrentOperations
:交易協調器中操作記錄的最大數目。MaxNoOfConcurrentScans
:在資料節點上同時執行的最大掃描數。MaxNoOfConcurrentSubOperations
:並行訂閱者操作的最大數目。MaxNoOfConcurrentTransactions
:在此資料節點上同時執行的最大交易數,可以同時執行的交易總數是此值乘以叢集中資料節點的數目。MaxNoOfFiredTriggers
:可以在一個資料節點上同時觸發的觸發器總數。MaxNoOfLocalOperations
:在此資料節點上定義的最大操作記錄數。MaxNoOfLocalScans
:在此資料節點上平行執行的最大片段掃描數。MaxNoOfOpenFiles
:每個資料節點開啟的最大檔案數。(每個檔案建立一個執行緒)。MaxNoOfOrderedIndexes
:可以在系統中定義的排序索引總數。MaxNoOfSavedMessages
:要寫入錯誤日誌的最大錯誤訊息數和要保留的最大追蹤檔案數。MaxNoOfSubscribers
:訂閱者的最大數目。MaxNoOfSubscriptions
:訂閱的最大數目(預設 0 = MaxNoOfTables)。MaxNoOfTables
:建議資料庫中儲存的 NDB 表總數。MaxNoOfTriggers
:可以在系統中定義的觸發器總數。MaxNoOfUniqueHashIndexes
:可以在系統中定義的唯一雜湊索引總數。MaxParallelCopyInstances
:節點重新啟動期間的平行複製數。預設值為 0,它使用兩個節點上的 LDM 數,最多為 16。MaxParallelScansPerFragment
:每個片段的最大平行掃描數。達到此限制後,掃描會序列化。MaxReorgBuildBatchSize
:用於重組表分割區的最大掃描批次大小。增加此值可能會加快表分割區重組的速度,但也會影響正在進行的流量。MaxStartFailRetries
:當資料節點在啟動時失敗時的最大重試次數,需要 StopOnError = 0。設定為 0 會導致啟動嘗試無限期地繼續。MaxUIBuildBatchSize
:用於建立唯一鍵的最大掃描批次大小。增加此值可能會加快建立唯一鍵的速度,但也會影響正在進行的流量。MemReportFrequency
:以秒為單位的記憶體報告頻率;0 = 僅在超出百分比限制時報告。MinDiskWriteSpeed
:LCP 和備份可以寫入的最小位元組數/秒。MinFreePct
:為重新啟動保留的記憶體資源百分比。NodeGroup
:資料節點所屬的節點群組;僅在叢集初始啟動期間使用。NodeGroupTransporters
:在同一節點群組中的節點之間使用的傳輸器數目。NodeId
:在叢集中所有節點中唯一識別資料節點的號碼。NoOfFragmentLogFiles
:屬於資料節點的 4 個檔案集中每個檔案集的 16 MB 重做日誌檔案數。NoOfReplicas
:資料庫中所有資料的副本數量。Numa
:(僅限 Linux;需要 libnuma)控制 NUMA 支援。設定為 0 允許系統決定資料節點程序是否使用交錯;1 表示由資料節點決定。ODirect
:盡可能使用 O_DIRECT 檔案讀寫。ODirectSyncFlag
:O_DIRECT 寫入被視為同步寫入;當 ODirect 未啟用、InitFragmentLogFiles 設定為 SPARSE 或兩者皆是時,將被忽略。RealtimeScheduler
:若為 true,則資料節點執行緒將被排程為即時執行緒。預設值為 false。RecoveryWork
:LCP 檔案的儲存額外負擔百分比:值越大表示正常操作時的工作量越少,但在復原期間的工作量越多。RedoBuffer
:在每個資料節點上分配用於寫入重做日誌的位元組數。RedoOverCommitCounter
:當 RedoOverCommitLimit 超過此次數時,交易將被中止,並且操作將按照 DefaultOperationRedoProblemAction 的指定處理。RedoOverCommitLimit
:每次刷新目前重做緩衝區所需的時間超過此秒數時,會將此事件發生的次數與 RedoOverCommitCounter 進行比較。RequireEncryptedBackup
:是否必須加密備份 (1 = 需要加密,否則為 0)。RequireCertificate
:節點必須在 TLS 搜尋路徑中找到金鑰和憑證。RequireTls
:需要 TLS 驗證的安全連線。ReservedConcurrentIndexOperations
:在一個資料節點上擁有專用資源的同時索引操作數。ReservedConcurrentOperations
:在一個資料節點的交易協調器中擁有專用資源的同時操作數。ReservedConcurrentScans
:在一個資料節點上擁有專用資源的同時掃描數。ReservedConcurrentTransactions
:在一個資料節點上擁有專用資源的同時交易數。ReservedFiredTriggers
:在一個資料節點上擁有專用資源的觸發器數量。ReservedLocalScans
:在一個資料節點上擁有專用資源的同時片段掃描數。ReservedTransactionBufferMemory
:分配給每個資料節點的金鑰和屬性資料的動態緩衝區空間(以位元組為單位)。RestartOnErrorInsert
:控制因插入錯誤而導致的重新啟動類型(啟用 StopOnError 時)。RestartSubscriberConnectTimeout
:資料節點等待訂閱 API 節點連線的時間量。設定為 0 以停用逾時,始終解析為最接近的整數秒。SchedulerExecutionTimer
:在傳送之前,排程器中執行的微秒數。SchedulerResponsiveness
:設定 NDB 排程器回應最佳化值 0-10;較高的值可提供更好的回應時間,但吞吐量較低。SchedulerSpinTimer
:在休眠之前,排程器中執行的微秒數。ServerPort
:用於設定 API 節點傳入連線的傳輸器之連接埠。SharedGlobalMemory
:在每個資料節點上分配用於任何用途的總位元組數。SpinMethod
:決定資料節點使用的自旋方法;詳細資訊請參閱文件。StartFailRetryDelay
:啟動失敗後重試前的延遲秒數;需要 StopOnError = 0。StartFailureTimeout
:終止前等待的毫秒數。(0=永遠等待)。StartNoNodeGroupTimeout
:在嘗試啟動之前,等待沒有節點群組的節點的時間(0=永遠)。StartPartialTimeout
:在嘗試啟動而不使用所有節點之前,等待的毫秒數。(0=永遠等待)。StartPartitionedTimeout
:在嘗試啟動分割之前,等待的毫秒數。(0=永遠等待)。StartupStatusReportFrequency
:啟動期間狀態報告的頻率。StopOnError
:設定為 0 時,資料節點會在節點故障後自動重新啟動並復原。StringMemory
:字串記憶體的預設大小 (0 到 100 = 最大值的 %,101+ = 實際位元組)。TcpBind_INADDR_ANY
:繫結 IP_ADDR_ANY,以便可以從任何位置建立連線(用於自動產生的連線)。TimeBetweenEpochs
:時間週期之間的時間(用於複寫的同步)。TimeBetweenEpochsTimeout
:時間週期之間的逾時。超過會導致節點關機。TimeBetweenGlobalCheckpoints
:將交易群組提交到磁碟的時間間隔。TimeBetweenGlobalCheckpointsTimeout
:將交易群組提交到磁碟的最小逾時。TimeBetweenInactiveTransactionAbortCheck
:檢查非作用中交易之間的時間間隔。TimeBetweenLocalCheckpoints
:在資料庫中拍攝快照之間的時間(以位元組的 2 為底的對數表示)。TimeBetweenWatchDogCheck
:在資料節點內執行檢查之間的時間間隔。TimeBetweenWatchDogCheckInitial
:在資料節點內執行檢查之間的時間間隔(分配記憶體時的早期啟動階段)。TotalSendBufferMemory
:用於所有傳輸器傳送緩衝區的總記憶體。TransactionBufferMemory
:分配給每個資料節點的金鑰和屬性資料的動態緩衝區空間(以位元組為單位)。TransactionDeadlockDetectionTimeout
:交易可以在資料節點內執行的時間。這是交易協調器等待參與交易的每個資料節點執行請求的時間。如果資料節點花費的時間超過此時間量,則交易將被中止。TransactionInactiveTimeout
:應用程式在執行交易的另一部分之前等待的毫秒數。這是交易協調器等待應用程式執行或傳送交易的另一部分(查詢、陳述式)的時間。如果應用程式花費的時間太長,則交易將被中止。逾時 = 0 表示應用程式永遠不會逾時。TransactionMemory
:在每個資料節點上分配給交易的記憶體。TwoPassInitialNodeRestartCopy
:在初始節點重新啟動期間以 2 次傳遞複製資料,這會啟用此類重新啟動的已排序索引的多執行緒建立。UndoDataBuffer
:未使用;沒有作用。UndoIndexBuffer
:未使用;沒有作用。UseShm
:在此主機上執行的此資料節點與 API 節點之間使用共用記憶體連線。WatchDogImmediateKill
:若為 true,則每當發生看門狗問題時,執行緒會立即終止;用於測試和偵錯。
以下參數是 ndbmtd 特有的。
AutomaticThreadConfig
:使用自動執行緒配置;覆寫 ThreadConfig 和 MaxNoOfExecutionThreads 的任何設定,並停用 ClassicFragmentation。ClassicFragmentation
:若為 true,則使用傳統的資料表分段;設定為 false 以啟用在 LDM 之間彈性分散片段。由 AutomaticThreadConfig 停用。EnableMultithreadedBackup
:啟用多執行緒備份。MaxNoOfExecutionThreads
:僅適用於 ndbmtd,指定執行緒的最大數量。MaxSendDelay
:ndbmtd 延遲傳送的最大微秒數。NoOfFragmentLogParts
:屬於此資料節點的重做日誌檔案群組數量。NumCPUs
:指定要搭配 AutomaticThreadConfig 使用的 CPU 數量。PartitionsPerNode
:決定在每個資料節點上建立的資料表分割區數量;如果啟用 ClassicFragmentation,則不會使用。ThreadConfig
:用於設定多執行緒資料節點 (ndbmtd)。預設值為空字串;請參閱文件以了解語法和其他資訊。