Redis的安装配置及IDEA中使用

打印 上一主题 下一主题

主题 1046|帖子 1046|积分 3138

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
目次

一、安装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



  1. # Redis是基于C语言编写的,因此首先需要安装Redis所需要的gcc依赖:
  2. yum install -y gcc tcl
  3. gcc -v # 查看gcc版本
复制代码

2.将redis的压缩包放到指定位置解压 [如下面放在 /opt 目次下]

  1. # 安装reids
  2. ll # 查看目录内容
  3. cd /opt # 进入 /opt 目录,将redis压缩包放在该目录下
  4. tar xzf redis-7.0.0.tar.gz # 解压
  5. cd redis-7.0.0 # 进入redis文件夹
  6. make && make install # 编译安装redis
  7. # 出现以下语句则安装成功
  8. # Hint: It's a good idea to run 'make test' ;)
  9. # - redis-cli:是redis提供的命令行客户端
  10. # - redis-server:是redis的服务端启动脚本
  11. # - redis-sentinel:是redis的哨兵启动脚本
  12. redis-server # 启动redis
复制代码


3.编译安装





4.配置redis.conf文件

  1. # 更改配置 redis.conf
  2. pwd # 查看当前所在路劲信息
  3. mkdir /myredis # 创建一个鑫目录文件夹用来存放副本reids.conf配置文件
  4. cp redis.conf /myredis # 将redis.conf复制到/myredis 文件目录下
  5. vim redis.conf # 编辑redis.conf配置文件
  6. # redis.conf 的配置更改,使用 /bind 回车找到位置
  7. # 允许访问的地址,默认是127.0.0.1,会导致只能在本地访问。修改为0.0.0.0则可以在任意IP访问,生产环境不要设置为0.0.0.0
  8. bind 0.0.0.0
  9. # 守护进程,修改为yes后即可后台运行
  10. daemonize yes
  11. # 密码,设置后访问Redis必须输入密码
  12. requirepass 123456
复制代码






5.开机自启

  1. # 开机自启
  2. vi /etc/systemd/system/redis.service
  3. # 内容如下
  4. [Unit]
  5. Description=redis-server
  6. After=network.target
  7. [Service]
  8. Type=forking
  9. ExecStart=/usr/local/bin/redis-server /usr/local/src/redis-6.2.6/redis.conf
  10. PrivateTmp=true
  11. [Install]
  12. WantedBy=multi-user.target
  13. # 然后重载系统服务
  14. systemctl daemon-reload
  15. # 启动
  16. systemctl start redis
  17. # 停止
  18. systemctl stop redis
  19. # 重启
  20. systemctl restart redis
  21. # 查看状态
  22. systemctl status redis
  23. # 运行命令实现开机自启
  24. systemctl enable redis
复制代码
  1. # 其他配置(可选)
  2. # 监听的端口
  3. port 6379
  4. # 工作目录,默认是当前目录,也就是运行redis-server时的命令,日志、持久化等文件会保存在这个目录
  5. dir .
  6. # 数据库数量,设置为1,代表只使用1个库,默认有16个库,编号0~15
  7. databases 1
  8. # 设置redis能够使用的最大内存
  9. maxmemory 512mb
  10. # 日志文件,默认为空,不记录日志,可以指定日志文件名
  11. logfile "redis.log"
复制代码
二、解决捏造机当地可以连接redis但是主机不能连接redis



(先关闭捏造机再进行以下配置:)
1.捏造机网络适配器网络连接设置为桥接模式



2.控制面板检察主机的网络连接信息



3.手动配置捏造机网络连接,输入与主机同一网络段地点



4.主机与捏造机网络地点对应


  1. ifconfig # 查看网络地址 192.168.43.180
  2. redis-cli -h 192.168.43.180 -p 6379 -a 123456 # 使用网络地址连接服务器
复制代码




三、配置远程连接

1.设置防火墙端口

  1. sudo firewall-cmd --add-port=6379/tcp --permanent
  2. sudo firewall-cmd --reload
复制代码
  1. redis-cli -h c -p 6379 -a 123456
复制代码
  1. ps aux | grep redis
复制代码
2.使用windows图形化界面






四、IDEA连接redis



1.新建项目





2.引入redis依靠和连接池依靠

  1. <!--redis依赖-->
  2. <dependency>
  3.     <groupId>org.springframework.boot</groupId>
  4.     <artifactId>spring-boot-starter-data-redis</artifactId>
  5. </dependency>
  6. <!--common-pool-->
  7. <dependency>
  8.     <groupId>org.apache.commons</groupId>
  9.     <artifactId>commons-pool2</artifactId>
  10. </dependency>
复制代码
3.配置文件

  1. spring:
  2.   redis:
  3.     host: 192.168.43.180 # 更换成自己的地址
  4.     port: 6379
  5.     password: 123456
  6.     lettuce:
  7.       pool:
  8.         max-active: 8
  9.         max-idle: 8
  10.         min-idle: 0
  11.         max-wait: 100ms
复制代码
4.注入redisTemplate

  1. @Autowired
  2. private RedisTemplate<String, Object> redisTemplate;
复制代码
5.编写测试(所以代码)

  1. import com.heima.redis.pojo.User;
  2. import org.junit.jupiter.api.Test;
  3. import org.springframework.beans.factory.annotation.Autowired;
  4. import org.springframework.boot.test.context.SpringBootTest;
  5. import org.springframework.data.redis.core.RedisTemplate;
  6. @SpringBootTest
  7. class RedisDemoApplicationTests {
  8.     @Autowired
  9.     private RedisTemplate<String,Object> redisTemplate;
  10.     @Test
  11.     void testString() {
  12.         // 写入一条String数据
  13.         redisTemplate.opsForValue().set("name", "柯迪耐");
  14.         // 获取string数据
  15.         Object name = redisTemplate.opsForValue().get("name");
  16.         System.out.println("name = " + name);
  17.     }
  18.     @Test
  19.     void testSaveUser() {
  20.         // 写入数据
  21.         redisTemplate.opsForValue().set("user:100", new User("虎哥", 21));
  22.         // 获取数据
  23.         User o = (User) redisTemplate.opsForValue().get("user:100");
  24.         System.out.println("o = " + o);
  25.     }
  26. }
复制代码

  1. import org.springframework.context.annotation.Bean;
  2. import org.springframework.context.annotation.Configuration;
  3. import org.springframework.data.redis.connection.RedisConnectionFactory;
  4. import org.springframework.data.redis.core.RedisTemplate;
  5. import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;
  6. import org.springframework.data.redis.serializer.RedisSerializer;
  7. @Configuration
  8. public class RedisConfig {
  9.     @Bean
  10.     public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory connectionFactory){
  11.         // 创建RedisTemplate对象
  12.         RedisTemplate<String, Object> template = new RedisTemplate<>();
  13.         // 设置连接工厂
  14.         template.setConnectionFactory(connectionFactory);
  15.         // 创建JSON序列化工具
  16.         GenericJackson2JsonRedisSerializer jsonRedisSerializer = new GenericJackson2JsonRedisSerializer();
  17.         // 设置Key的序列化
  18.         template.setKeySerializer(RedisSerializer.string());
  19.         template.setHashKeySerializer(RedisSerializer.string());
  20.         // 设置Value的序列化
  21.         template.setValueSerializer(jsonRedisSerializer);
  22.         template.setHashValueSerializer(jsonRedisSerializer);
  23.         // 返回
  24.         return template;
  25.     }
  26. }
复制代码

  1. import lombok.AllArgsConstructor;
  2. import lombok.Data;
  3. import lombok.NoArgsConstructor;
  4. @Data
  5. @NoArgsConstructor
  6. @AllArgsConstructor
  7. public class User {
  8.     private String name;
  9.     private Integer age;
  10. }
复制代码
6.检察winsows GUI 界面




免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

莫张周刘王

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表