redis伺服器配置

2022-07-17 09:39:17 字數 3273 閱讀 9656

配置選項

redis 伺服器提供了一些配置選項(configuration option),通過修改這些選項的值,可以改變選項對應功能的行為。

舉個例子,redis 伺服器缺省會建立 0 號至 15 號共十六個資料庫以供使用者使用。

但 redis 伺服器的資料庫數量並不是一成不變的,redis 提供了 databases 選項,它的預設值為 16 ,通過修改這個選項的值,我們可以讓伺服器建立指定數量的資料庫,比如 5 個、10 個、32 個、100 個,諸如此類。

再舉乙個例子,在介紹 lua 指令碼的時候,我們曾說過,如果乙個指令碼的執行時間過長,使用者可以使用script kill 命令來強制停止指令碼,其中 lua-time-limit 選項的值就決定了指令碼可以不被打擾地執行的最大毫秒數,如果這個選項的值是 5000 的話,那麼只有在指令碼執行時間超過 5000 毫秒之後,伺服器才會開始接受 script kill 命令,允許使用者終結正在執行的指令碼。如果有需要的話,使用者也可以把這個選項的值調小或者調大。

修改選項的值(1):通過給定引數

redis 提供了三種方法來修改配置選項的值。

第一種方法是在啟動伺服器時,通過給定引數的方式來為配置選項設定值,格式為:

$ redis-server ------...

比如給定以下引數來啟動 redis 伺服器的話,伺服器就會建立 32 個資料庫:

$ redis-server --databases 32

而給定以下引數可以讓伺服器建立 100 個資料庫,並將伺服器的埠設定為 10086:

$ redis-server --databases 100 --port 10086

修改選項的值(2):通過給定配置檔案

修改配置選項值的第二種方法是,將要修改的配置選項以及選項的值記錄到乙個配置檔案裡面,並在啟動伺服器時,讓伺服器載入該配置檔案。格式為:

$ redis-server

舉個例子,我們可以建立乙個包含以下內容的配置檔案 redis.conf :

databases 128

port 10086

並在啟動伺服器時讓伺服器載入該檔案:

$ redis-server redis.conf

那麼啟動後的伺服器將建立 128 個資料庫,並使用埠 10086 來監聽客戶端的連線請求。

修改選項的值(3):使用 config 系列命令

而通過 config set 命令則可以修改配置選項的值,該命令的格式為:

config set

舉個例子,執行以下命令,可以將 lua 指令碼的最大正常執行時間從原來的 5000 改為 3000 :

redis> config set lua-time-limit 3000

ok執行 config get 命令可以檢查設定是否已經成功:

redis> config get lua-time-limit

1) "lua-time

config set 的注意事項(1/2)

使用 config set 需要注意的一點是, 並不是所有配置選項都可以在伺服器執行時動態地設定的,有一些配置選項必須在伺服器啟動時才能設定。

舉個例子,因為建立資料庫的工作是在伺服器啟動時進行的,所以資料庫的數量必須在啟動伺服器時指定,在伺服器執行的過程中,嘗試使用 config set 去修改資料庫的數量是不可行的:

redis> config set databases 100

(error) err unsupported config parameter: databases

另乙個例子是伺服器使用的監聽埠號,這個選項也不能在伺服器已經執行的情況下設定:

redis> config set port 10086

(error) err unsupported config parameter: port

config set 的注意事項(2/2)

config set 另外乙個需要注意的地方是, config set 設定的選項值只會在伺服器執行的過程中生效,一旦伺服器關機,config set 設定的選項值就會丟失。

舉個例子, lua-time-limit 選項的預設值為 5000 ,雖然通過 config set lua-time-limit 3000 可以將選項的值改為 3000 ,但這個修改只會在伺服器的本次執行中有效,一旦伺服器關閉並重啟的話, luatime-limit 選項的值就會變回預設值 5000 。

redis> config set lua-time-limit 3000

okredis> config get lua-time-limit

1) "lua-time-limit"

2) "3000"

redis> config get lua-time-limit # 重啟伺服器之後執行

1) "lua-time-limit"

2) "5000"

config rewrite 命令

如果伺服器在啟動時載入了配置檔案,並且在伺服器執行的過程中使用 config set 修改了配置選項的值,那麼執行 config rewrite 命令可以將被修改的配置選項以及它的值寫入到配置檔案裡面。

舉個例子,如果伺服器啟動時載入了包含以下內容的配置檔案:

databases 32

lua-time-limit 5000

如果使用者在伺服器執行的過程中,執行了 config set lua-time-limit 3000 命令,並且他打算將這一修改記錄到配置檔案裡面的話,那麼他可以執行 config rewrite 命令,將配置檔案的內容修改為:

databases 32

lua-time-limit 3000

這樣伺服器在下次啟動並載入配置檔案時,就會繼續將 lua 指令碼的最大正常執行時間設定為 3000 毫秒。

配置選項

三種設定配置選項的方法:

1. 伺服器啟動時通過引數來設定,格式為 $ redis-server --。

2. 伺服器啟動時通過指定配置檔案來設定,格式為 $ redis-server

3. 在伺服器執行時,通過 config set 命令來設定。

需要注意的是,並不是所有配置選項都可以使用 config set 來修改,有些選項只能在伺服器啟動時設定,並且在不使用 config rewrite 的情況下, config set 設定的選項值在伺服器關閉之後就會丟失。

使用 config get 命令可以獲取配置選項的當前值。如果伺服器在啟動時載入了配置檔案,並且在伺服器執行的過程中,使用者使用 config set 修改了某些選項的值,那麼只要使用 config rewrite 命令,就可以將 config set 的修改記錄到配置檔案裡面,以便伺服器下次啟動時使用。 

Redis伺服器配置 配置選項

修改和獲取配置選項的值 1.啟動給定引數 2.啟動給定配置檔案 3.使用config系列命令通過使用 config 系列命令,使用者可以在伺服器執行時動態修改選項的值,也可以通過命令獲取選項當前的值 config set 的注意事項 並不是所有配置選項都可以在伺服器執行時動態地設定的,有一些配置選項...

centos伺服器配置redis

wget 解壓tar zxvf redis 6.0.3.tar.gz 進入目錄 編譯make 出錯的話一般是gcc未安裝 gcc版本低,更新gcc yum y install centos release scl yum y install devtoolset 9 gcc devtoolset 9...

配置redis快取伺服器

1.如果是配置虛擬機器的redis快取,先開啟虛擬機器,然後用xshell連線上虛擬機器對虛擬機器進行操作。用xftp連線上虛擬機器傳入檔案。2.如果是配置雲伺服器的redis快取,直接用xshell和xftp連線上虛擬機器或者雲伺服器。如果我沒有更換檔案目錄,就是跟著走就行了 第三步 解壓redi...