Redis的安裝配置及IDEA中使用

目錄

一、安裝redis,配置redis.conf

1.安裝gcc

2.將redis的壓縮包放到指定位置解壓 [如下面放在 /opt 目錄下]

3.編譯安裝

4.配置redis.conf文件

5.開機自啟

二、解決虛擬機本地可以連接redis但是主機不能連接redis

1.虛擬機網絡適配器網絡連接設置為橋接模式

2.控制面板查看主機的網絡連接信息

3.手動配置虛擬機網絡連接,輸入與主機同一網絡段地址

三、配置遠程連接

1.設置防火墻端口

2.使用windows圖形化界面

四、IDEA連接redis

1.新建項目

2.引入redis依賴和連接池依賴

3.配置文件

4.注入redisTemplate

5.編寫測試(所以代碼)

6.查看winsows GUI 界面


一、安裝redis,配置redis.conf

1.安裝gcc

# Redis是基于C語言編寫的,因此首先需要安裝Redis所需要的gcc依賴:
yum install -y gcc tcl
gcc -v # 查看gcc版本

2.將redis的壓縮包放到指定位置解壓 [如下面放在 /opt 目錄下]

# 安裝reids
ll # 查看目錄內容
cd /opt # 進入 /opt 目錄,將redis壓縮包放在該目錄下
tar xzf redis-7.0.0.tar.gz # 解壓
cd redis-7.0.0 # 進入redis文件夾
make && make install # 編譯安裝redis# 出現以下語句則安裝成功
# Hint: It's a good idea to run 'make test' ;)
# - redis-cli:是redis提供的命令行客戶端
# - redis-server:是redis的服務端啟動腳本
# - redis-sentinel:是redis的哨兵啟動腳本redis-server # 啟動redis

3.編譯安裝

4.配置redis.conf文件

# 更改配置 redis.conf
pwd # 查看當前所在路勁信息
mkdir /myredis # 創建一個鑫目錄文件夾用來存放副本reids.conf配置文件
cp redis.conf /myredis # 將redis.conf復制到/myredis 文件目錄下
vim redis.conf # 編輯redis.conf配置文件# redis.conf 的配置更改,使用 /bind 回車找到位置
# 允許訪問的地址,默認是127.0.0.1,會導致只能在本地訪問。修改為0.0.0.0則可以在任意IP訪問,生產環境不要設置為0.0.0.0
bind 0.0.0.0
# 守護進程,修改為yes后即可后臺運行
daemonize yes 
# 密碼,設置后訪問Redis必須輸入密碼
requirepass 123456

5.開機自啟

# 開機自啟 
vi /etc/systemd/system/redis.service
# 內容如下
[Unit]
Description=redis-server
After=network.target[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /usr/local/src/redis-6.2.6/redis.conf
PrivateTmp=true[Install]
WantedBy=multi-user.target# 然后重載系統服務
systemctl daemon-reload# 啟動
systemctl start redis
# 停止
systemctl stop redis
# 重啟
systemctl restart redis
# 查看狀態
systemctl status redis# 運行命令實現開機自啟
systemctl enable redis
# 其他配置(可選)
# 監聽的端口
port 6379
# 工作目錄,默認是當前目錄,也就是運行redis-server時的命令,日志、持久化等文件會保存在這個目錄
dir .
# 數據庫數量,設置為1,代表只使用1個庫,默認有16個庫,編號0~15
databases 1
# 設置redis能夠使用的最大內存
maxmemory 512mb
# 日志文件,默認為空,不記錄日志,可以指定日志文件名
logfile "redis.log"

二、解決虛擬機本地可以連接redis但是主機不能連接redis

(先關閉虛擬機再進行以下配置:)

1.虛擬機網絡適配器網絡連接設置為橋接模式

2.控制面板查看主機的網絡連接信息

3.手動配置虛擬機網絡連接,輸入與主機同一網絡段地址

4.主機與虛擬機網絡地址對應

ifconfig # 查看網絡地址 192.168.43.180
redis-cli -h 192.168.43.180 -p 6379 -a 123456 # 使用網絡地址連接服務器

三、配置遠程連接

1.設置防火墻端口

sudo firewall-cmd --add-port=6379/tcp --permanent
sudo firewall-cmd --reload
redis-cli -h c -p 6379 -a 123456
ps aux | grep redis

2.使用windows圖形化界面

四、IDEA連接redis

1.新建項目

2.引入redis依賴和連接池依賴

<!--redis依賴-->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!--common-pool-->
<dependency><groupId>org.apache.commons</groupId><artifactId>commons-pool2</artifactId>
</dependency>

3.配置文件

spring:redis:host: 192.168.43.180 # 更換成自己的地址port: 6379password: 123456lettuce:pool:max-active: 8max-idle: 8min-idle: 0max-wait: 100ms

4.注入redisTemplate

@Autowired
private RedisTemplate<String, Object> redisTemplate;

5.編寫測試(所以代碼)

import com.heima.redis.pojo.User;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.RedisTemplate;@SpringBootTest
class RedisDemoApplicationTests {@Autowiredprivate RedisTemplate<String,Object> redisTemplate;@Testvoid testString() {// 寫入一條String數據redisTemplate.opsForValue().set("name", "柯迪耐");// 獲取string數據Object name = redisTemplate.opsForValue().get("name");System.out.println("name = " + name);}@Testvoid testSaveUser() {// 寫入數據redisTemplate.opsForValue().set("user:100", new User("虎哥", 21));// 獲取數據User o = (User) redisTemplate.opsForValue().get("user:100");System.out.println("o = " + o);}
}

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.RedisSerializer;@Configuration
public class RedisConfig {@Beanpublic RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory connectionFactory){// 創建RedisTemplate對象RedisTemplate<String, Object> template = new RedisTemplate<>();// 設置連接工廠template.setConnectionFactory(connectionFactory);// 創建JSON序列化工具GenericJackson2JsonRedisSerializer jsonRedisSerializer = new GenericJackson2JsonRedisSerializer();// 設置Key的序列化template.setKeySerializer(RedisSerializer.string());template.setHashKeySerializer(RedisSerializer.string());// 設置Value的序列化template.setValueSerializer(jsonRedisSerializer);template.setHashValueSerializer(jsonRedisSerializer);// 返回return template;}
}

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {private String name;private Integer age;
}

6.查看winsows GUI 界面

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/45210.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/45210.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/45210.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

VSCode上通過C++實現單例模式

單例模式實際上就是為了確保一個類最多只有一個實例&#xff0c;并且在程序的任何地方都可以訪問這個實例&#xff0c;也就是提供一個全局訪問點&#xff0c;單例對象不需要手動釋放&#xff0c;交給系統來釋放就可以了&#xff0c;單例模式的設計初衷就是為了在整個應用程序的…

vue 下拉菜單樹形結構——vue-treeselect的組件使用

參考&#xff1a; https://www.cnblogs.com/syjtiramisu/p/17672866.htmlhttps://www.cnblogs.com/syjtiramisu/p/17672866.html vue-treeselect的使用 - 簡書下載依賴 使用https://www.jianshu.com/p/459550e1477d 實際項目使用&#xff1a;

uni-app iOS上架相關App store App store connect 云打包有次數限制

相冊權限 uni-app云打包免費有次數 切換一個賬號繼續

使用SOAP與TrinityCore交互(待定)

原文&#xff1a;SOAP with TrinityCore | TrinityCore MMo Project Wiki 如何使用SOAP與TC交互 SOAP代表簡單對象訪問協議&#xff0c;是一種類似于REST的基于標準的web服務訪問協議的舊形式。只要必要的配置到位&#xff0c;您就可以利用SOAP向TrinityCore服務器發送命令。 …

Open3D 計算點云配準的精度和重疊度

目錄 一、概述 1.1計算配準精度 1.2計算點云重疊度 二、代碼實現 2.1關鍵函數 2.2完整代碼 三、實現效果 3.1原始點云 3.2計算結果 一、概述 在點云配準中,精度和重疊度是兩個重要的評價指標。精度通常用均方根誤差(RMSE)來衡量,而重疊度則表示兩個點云在…

centos環境啟動/重啟java服務腳本優化

centos環境啟動/重啟java服務腳本優化 引部分命令說明根據端口查詢服務進程殺死進程函數腳本接收參數 腳本注意重啟文檔位置異常 引 在離線環境部署的多個java應用組成的系統&#xff0c;測試階段需要較為頻繁的發布&#xff0c;因資源限制&#xff0c;沒有弄devops或CICD那套…

華為手機聯系人不見了怎么恢復?3個解決方案

華為手機聯系人列表就像是我們精心編織的社交網絡之網。然而&#xff0c;有時&#xff0c;這張網可能會因為各種原因而意外破損&#xff0c;聯系人信息消失得無影無蹤&#xff0c;讓我們陷入“人脈孤島”的困境。華為手機聯系人不見了怎么恢復&#xff1f;別擔心&#xff0c;我…

構建高質量數據集與智能數據工程平臺:播客AI Odyssey深度對話實錄

對話整數智能聯創和前IDEA研究員&#xff1a;構建高質量數據集與智能數據工程平臺 - AI Odyssey | 小宇宙 - 聽播客&#xff0c;上小宇宙 人工智能技術的日益深遠發展&#xff0c;對人工智能的性能提升與技術迭代提出了新的要求。在大模型訓練中&#xff0c;已有的研究和實踐表…

【操作系統】進程管理——用信號量機制解決問題,以生產者-消費者問題為例(個人筆記)

學習日期&#xff1a;2024.7.10 內容摘要&#xff1a;利用信號量機制解決幾個經典問題模型 目錄 引言 問題模型 生產者-消費者問題&#xff08;經典&#xff09; 多生產者-多消費者問題 吸煙者問題 讀者寫者問題&#xff08;難點&#xff09; 哲學家進餐問題&#xff0…

解決POST請求中文亂碼問題

解決POST請求中文亂碼問題 1、亂碼原因2、解決方法3、具體步驟 &#x1f496;The Begin&#x1f496;點點關注&#xff0c;收藏不迷路&#x1f496; 在Web開發中&#xff0c;處理POST請求時經常遇到中文亂碼問題&#xff0c;這主要是由于服務器在接收到POST請求的數據后&#x…

物聯網時代的等保測評:保障萬物互聯的安全

隨著物聯網&#xff08;IoT&#xff09;技術的飛速發展&#xff0c;我們的生活正逐漸進入一個萬物互聯的新時代。從智能家居到智慧城市&#xff0c;從無人駕駛到農業物聯網&#xff0c;IoT技術正在滲透到我們生活的方方面面。然而&#xff0c;隨著IoT設備數量的激增&#xff0c…

BUG解決:postman可以請求成功,但Python requests請求報403

目錄 問題背景 問題定位 問題解決 問題背景 使用Python的requests庫對接物聯數據的接口之前一直正常運行&#xff0c;昨天突然請求不通了&#xff0c;通過進一步驗證發現凡是使用代碼調用接口就不通&#xff0c;而使用postman就能調通&#xff0c;請求參數啥的都沒變。 接口…

SSL 證書錯誤:如何修復以及錯誤發生的原因

SSL證書可以提升網站的可信度。然而&#xff0c;如果您的SSL證書出現錯誤&#xff0c;您可能會得到一個“不安全”的標簽&#xff0c;這可能會導致訪問者失去對您網站的信任并轉向競爭對手。 本文將介紹SSL證書錯誤的原因及其對用戶的潛在影響。隨后&#xff0c;我們將提供詳細…

MybatisPlus 核心功能

MybatisPlus 核心功能 文章目錄 MybatisPlus 核心功能1. 條件構造器1.1 QueryWrapper1.2 LambdaQueryWrapper&#xff08;推薦&#xff09;1.3 UpdateWrapper1.4 LambdaUpdateWrapper 2. 自定義SQL3. Service接口 1. 條件構造器 當涉及到查詢或修改語句時&#xff0c;MybatisP…

界面組件Kendo UI for React 2024 Q2亮點 - 生成式AI集成、設計系統增強

隨著最新的2024年第二季度發布&#xff0c;Kendo UI for React為應用程序開發設定了標準&#xff0c;包括生成式AI集成、增強的設計系統功能和可訪問的數據可視化。新的2024年第二季度版本為應用程序界面提供了人工智能(AI)提示&#xff0c;從設計到代碼的生產力增強、可訪問性…

Java畢業設計 基于SSM vue圖書管理系統小程序 微信小程序

Java畢業設計 基于SSM vue圖書管理系統小程序 微信小程序 SSM 圖書管理系統小程序 功能介紹 用戶 登錄 注冊 首頁 圖片輪播 圖書信息推薦 圖書詳情 贊 踩 評論 收藏 系統公告 公告詳情 用戶信息修改 我的待還 圖書歸還 催還提醒 我的收藏管理 意見反饋 管理員 登錄 個人中心…

絕地求生PUBG奇幻大亂斗怎么玩 奇幻大亂斗什么時候回歸

《絕地求生》(PUBG) 是由韓國開發的一款戰術競技型射擊類沙盒游戲&#xff0c;游戲中我們需要和隊友組隊乘坐飛機跳傘到達一座空島&#xff0c;之后我們需要搜索一切我們可以用到的物資&#xff0c;之后我們于敵人進行對戰&#xff0c;期間不斷躲避毒圈的追擊&#xff0c;最后當…

python(餐廳點餐系統)

全部代碼&#xff1a; meau_lis[[1,"牛排",50],[2,"羊排",80],[3,"大盤雞",50],[4,"火鍋雞",68],[5,"豬大骨",35],[6,"米飯",2],[7,"壽司",5],[8,"大餅",6],[9,"小米粥",1],[10,&…

深入理解MySQL中的EXPLAIN及type列

在MySQL中&#xff0c;EXPLAIN是一個強大的工具&#xff0c;它可以幫助我們理解SQL查詢的執行計劃。通過使用EXPLAIN&#xff0c;我們可以獲取到查詢的詳細信息&#xff0c;包括如何執行查詢&#xff0c;以及查詢的各個部分如何連接在一起。在本篇博客中&#xff0c;我們將重點…

Redis+Caffeine 實現兩級緩存實戰

RedisCaffeine 實現兩級緩存 背景 ? 事情的開始是這樣的&#xff0c;前段時間接了個需求&#xff0c;給公司的商城官網提供一個查詢預計送達時間的接口。接口很簡單&#xff0c;根據請求傳的城市倉庫發貨時間查詢快遞的預計送達時間。因為商城下單就會調用這個接口&#xff…