天天看點

tiup修改參數顯示成功但不生效

作者:陳厚強​

背景

新搭建tidb叢集,導入資料時遇到報錯: ERROR 8004 (HY000): Transaction is too large, size: 104857651,需要修改參數txn-total-size-limit;但通過tiup edit-config修改參數,并reload tidb成功後,參數依舊沒生效。

遇到的問題

1、使用tiup修改參數如下:

tiup修改參數顯示成功但不生效

2、reload tidb節點,顯示success

tiup修改參數顯示成功但不生效

3、檢視參數修改未生效

tiup修改參數顯示成功但不生效

4、檢視tidb.log啟動日志,txn-total-size-limit參數還是初始值

tiup修改參數顯示成功但不生效

分析問題

1、檢查tidb節點的conf目錄下的檔案

通過檢查<tidb_deploy>/conf下的tidb.toml檔案,發現參數是修改後的,說明tiup将修改的參數傳給tidb節點了。

2、檢查tidb.log日志

檢查tidb.log日志,發現tidb并未重新開機,是以修改後的參數沒有生效。

3、手動關閉tidb節點

使用tiup cluster stop titest -R tidb指令關閉資料庫,發現資料庫并未關閉。

4、檢查拓撲檔案tiup.yaml

通過檢查拓撲檔案,發現user: tidb跟tiup的安裝使用者不是同一個使用者,tiup安裝使用者為root,拓撲檔案中配置的是tidb,導緻tiup無法關閉tidb節點。

tiup修改參數顯示成功但不生效
tiup修改參數顯示成功但不生效

總結

tiup修改參數成功,但reload并未生效的原因是:tiup的安裝使用者跟拓撲檔案中user: tidb不是同一個使用者,導緻tiup無法關閉tidb節點。将tiup的安裝使用者跟拓撲檔案中user: tidb保持一緻後,tiup參數修改成功,并且reload完成後,參數生效,此問題得以解決。

建議