?
Dokumen ini menggunakan Manual laman web PHP Cina Lepaskan
CONFIG REWRITE
自2.8.0起可用。
CONFIG REWRITE 命令重寫redis.conf
服務(wù)器啟動時使用的文件,應(yīng)用所需的最小更改,以使其反映服務(wù)器當(dāng)前使用的配置,由于使用 CONFIG SET 命令,與原始配置相比可能會有所不同。
重寫以非常保守的方式執(zhí)行:
盡可能保留原始 redis.conf 的注釋和整體結(jié)構(gòu)。
如果舊的 redis.conf 文件中已經(jīng)存在一個選項,它將被重寫在相同的位置(行號)。
如果某個選項尚不存在,但它被設(shè)置為其默認值,則不會通過重寫過程添加該選項。
如果某個選項尚不存在,但它被設(shè)置為非默認值,則會將其添加到文件末尾。
未使用的行空白。例如,如果您曾經(jīng)有過多個save
指令,但由于您禁用 RDB 持久性,當(dāng)前配置較少或沒有,因此所有行將被清空。
如果由于某種原因原來的配置文件不再存在,CONFIG REWRITE 也可以從頭重寫配置文件。但是,如果服務(wù)器根本沒有配置文件啟動,那么 CONFIG REWRITE 只會返回一個錯誤。
為了確保 redis.conf 文件始終保持一致,即在發(fā)生錯誤或崩潰時始終以舊文件或新文件結(jié)尾,重寫將使用一次write(2)
調(diào)用來執(zhí)行,該調(diào)用的內(nèi)容足以滿足至少與舊文件一樣大。有時會添加注釋形式的附加填充以確保生成的文件足夠大,并且稍后會截斷文件以刪除末尾的填充。
簡單的字符串回復(fù):OK
當(dāng)配置被正確地重寫時。否則會返回錯誤。