目錄
1、介紹
1、redis的特點:
2、緩存
2、安裝Redis
1、安裝單機版redis
2、redis-cli命令參數
3、redis的增刪查改命令
4、redis的相關工具
1、介紹
redis是一個開源的、使用C語言編寫的、支持網絡交互的、可基于內存也可持久化的Key-Value數據庫
redis的官網:redis.io 注:域名后綴io屬于國家域名,是british Indian Ocean territory,即英屬印度洋領地
1、redis的特點:
1.豐富的數據結構 ?-----string,list,set,zset,hash等數據結構的存儲 2.支持持久化 3.支持事務 ? ---------------事務是指“一個完整的動作,要么全部執行,要么什么也沒有做”。 4.支持主從
2、緩存
1.類型1).數據緩存 2).頁面緩存(Smarty) 在開發網站的時候如果有一些數據在短時間之內不會發生變化,而它們還要被頻繁訪問,為了提高用戶的請求速度和降低網站的負載,就把這些數據放到一個讀取速度更快的介質上(或者是通過較少的計算量就可以獲得該數據) ,該行為就稱作對該數據的緩存。 該介質可以是文件、數據庫、內存,內存經常用于數據緩存 ? 2.形式 頁面緩存經常用在內存管理系統里邊 數據緩存經常用在頁面的具體數據里邊 ? redis和memcache比較 1).Redis不僅僅支持簡單的Key-Value類型的數據,同時還提供了list,set,zset,hash等數據結構的存儲 2).Redis支持master-slave(主-從)模式應用 3).Redis支持數據的持久化
2、安裝Redis
1、安裝單機版redis
[root@localhost ~]# wget http://download.redis.io/releases/redis-5.0.10.tar.gz #下載redis
[root@localhost ~]# tar xzf redis-5.0.10.tar.gz -C /usr/local #解壓
[root@localhost ~]# cd /usr/local/
[root@localhost local]# mv redis-5.0.10/ redis
[root@localhost local]# cd redis/
[root@localhost redis]# yum install -y gcc make #安裝編譯工具
[root@localhost redis]# make
注:如果報錯請將剛才解壓的安裝包刪除掉,再次重新解壓并進行make安裝即可。[root@localhost redis]# /usr/local/redis/src/redis-server #啟動命令,即redis-server,這種用不習慣可以參照下面得配置systemctl啟動。
#配置簡單方式管理命令
[root@localhost ~]# vim /etc/profile #配置文件末尾加入下述環境變量得配置
PATH="/usr/local/redis/src:$PATH"
[root@localhost ~]# source /etc/profile #重新加載系統全局配置文件
#測試使用管理redis命令
[root@localhost ~]# redis-server
#以下為自定義參數和配置systemctl啟動方式等
[root@localhost ~]# cd /usr/local/redis
[root@localhost redis]# cp redis.conf redis.conf.bak #備份配置文件
[root@localhost redis]# vim redis.conf #修改如下
bind 127.0.0.1 #Redis 服務器監聽的網絡接口地址
daemonize yes #開啟后臺模式將on改為yes
timeout 300 #連接超時時間
port 6379 #端口號
dir /data/application/redis/data #本地數據庫存放持久化數據的目錄該目錄-----需要存在
pidfile /var/run/redis_6379.pid #定義pid文件
logfile /var/log/redis.log #定義log文件
daemonize yes #啟動后自動放到后臺
requirepass 1234 #設置密碼為1234
#創建存放數據的目錄
[root@redis-master redis]# mkdir -p /data/application/redis/data#配置redis為systemctl啟動
[root@redis-master redis]# cd /lib/systemd/system
[root@redis-master system]# vim redis.service
[Unit]
Description=Redis
After=network.target[Service]
ExecStart=/usr/local/redis/src/redis-server /usr/local/redis/redis.conf --daemonize no
ExecStop=/usr/local/redis/src/redis-cli -h 127.0.0.1 -p 6379 shutdown[Install]
WantedBy=multi-user.target=====================
參數詳解:
? [Unit] 表示這是基礎信息
? Description 是描述
? After 是在那個服務后面啟動,一般是網絡服務啟動后啟動? [Service] 表示這里是服務信息
? ExecStart 是啟動服務的命令
? ExecStop 是停止服務的指令? [Install] 表示這是是安裝相關信息
? WantedBy 是以哪種方式啟動:multi-user.target表明當系統以多用戶方式(默認的運行級別)啟動時,這個服務需要被自動運行。
===================
啟動服務:
[root@localhost system]# systemctl daemon-reload
[root@localhost system]# systemctl start redis.service
本次我們沒有使用systemctl得形式啟動,而是配置環境變量,這樣使用redis命令更方便
2、redis-cli命令參數
redis-cli
是 Redis 提供的命令行工具,用于與 Redis 服務器進行交互。它支持多種參數來控制連接方式、執行命令以及顯示輸出等。以下是常用的 redis-cli
參數:
-
連接參數:
-h <hostname>
:指定連接的 Redis 服務器主機名或 IP 地址。-p <port>
:指定連接的 Redis 服務器端口號,默認為 6379。-a <password>
:指定連接的 Redis 服務器密碼。如果 Redis 服務器設置了密碼保護,需要使用該參數提供密碼進行連接。-s <socket>
:指定連接的 Unix 套接字文件路徑。適用于本地連接 Unix 套接字的情況。
-
交互和顯示參數:
-n <db-number>
:選擇 Redis 數據庫的編號,默認為 0。Redis 支持多個數據庫,通過編號區分。--raw
:以原始格式顯示回復內容,不進行任何格式化處理。-r <repeat>
:指定重試連接次數,默認為 10 次。--csv
:以 CSV 格式顯示輸出。
-
輸入輸出參數:
-i <file>
:從指定文件中讀取命令,并將其發送到 Redis 服務器執行。-x
:從標準輸入讀取命令,并將其發送到 Redis 服務器執行。適合于管道和腳本操作。
-
其他參數:
-v
或--version
:顯示redis-cli
的版本信息。-h
或--help
:顯示幫助信息,列出所有可用的redis-cli
參數和選項。
登錄數據庫
#啟動redis
redis-server redis.conf
或
redis-server redis.conf & #這個命令是因為配置文件中沒有配置打開daemonize yes這個是啟動后自動放到后臺得參數#關閉redis
redis-cli -h 192.168.226.21 SHUTDOWN #如何有密碼需要-a指定密碼,-p指定定義得端口
[root@localhost redis]# redis-cli -h 192.168.226.21 -p 6379 -a 1234
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
192.168.226.21:6379> ping
PONG
192.168.226.21:6379> set name newrain #設置key--name,并設置值
OK
192.168.226.21:6379> get name #獲取到key
"newrain"
192.168.226.21:6379> 單機版redis已經部署完成。將ip和端口發給開發就可以了。
3、redis的增刪查改命令
-
增加(添加)操作:
- 設置鍵值對(Set):
這個命令用于設置指定鍵的值為給定的字符串值。SET key value
- 設置鍵值對(Set):
-
刪除操作:
- 刪除鍵(Delete):
這個命令用于刪除一個或多個指定的鍵。DEL key [key ...]
- 刪除鍵(Delete):
-
查詢操作:
- 獲取鍵的值(Get):
這個命令用于獲取指定鍵的值。GET key
- 獲取鍵的值(Get):
-
修改操作:
- 更新鍵的值(Set):
這個命令可以用于更新現有鍵的值,或者用于設置新的鍵值對。SET key new_value
- 更新鍵的值(Set):
-
其他相關操作:
-
檢查鍵是否存在(Exists):
EXISTS key
這個命令用于檢查指定的鍵是否存在于 Redis 中。
-
設置鍵的過期時間(Expire):
EXPIRE key seconds
這個命令用于為指定鍵設置過期時間,單位為秒。過期時間到期后,鍵會自動被刪除。
-
4、redis的相關工具
./redis-benchmark ? ? #用于進行redis性能測試的工具
./redis-check-dump ? ?#用于修復出問題的dump.rdb文件
./redis-cli ? ? ? ? ? #redis的客戶端
./redis-server ? ? ? ?#redis的服務端
./redis-check-aof ? ? #用于修復出問題的AOF文件
./redis-sentinel ? ? ?#用于集群管理