前言

自己在搭建redis服务的时候碰到一些问题,好多人只告诉你怎么成功搭建,但是并没有整理过程中遇到的问题,所有楼主就花了点时间来整理下。

  • linux环境安装redis
  • 安装中的碰到的问题和解决办法
  • 怎么在代码中使用安装的redis
  • 设置用户名和密码
  • 程序应用中碰到的问题

介绍

redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便。

一、安装redis

1、下载安装包

cd /www/redis/wget http://download.redis.io/releases/redis-4.0.8.tar.gztar -zxvf redis-4.0.8.tar.gzmv redis-4.0.8 redis

2、编译redis

cd /www/redis/redis/make MALLOC=libcmake PREFIX=/usr/local/redis install

3、准备配置文件

cd /usr/local/redismkdir confcd conf/vi redis_6379.conf

配置文件内容如下:

bind 127.0.0.1protected-mode noport 6379tcp-backlog 511timeout 0tcp-keepalive 300daemonize yessupervised nopidfile /www/redis/data/redis/6379/redis_6379.pidloglevel noticelogfile "/www/redis/data/redis/6379/log.log"databases 16always-show-logo yessave 900 1save 300 10save 60 10000stop-writes-on-bgsave-error yesrdbcompression yesrdbchecksum yesdbfilename dump.rdbdir /www/redis/data/redis/6379/slave-serve-stale-data yesslave-read-only yesrepl-diskless-sync norepl-diskless-sync-delay 5repl-disable-tcp-nodelay noslave-priority 100lazyfree-lazy-eviction nolazyfree-lazy-expire nolazyfree-lazy-server-del noslave-lazy-flush noappendonly yesappendfilename "appendonly.aof"appendfsync everysecno-appendfsync-on-rewrite noauto-aof-rewrite-percentage 100auto-aof-rewrite-min-size 64mbaof-load-truncated yesaof-use-rdb-preamble nolua-time-limit 5000slowlog-log-slower-than 10000slowlog-max-len 128latency-monitor-threshold 0notify-keyspace-events ""hash-max-ziplist-entries 512hash-max-ziplist-value 64

4、启动服务

mkdir -p /www/redis/data/redis/6379/cd ../bin/./redis-server ../conf/redis_6379.conf

5、使用客户端链接

./redis-cli

判断是否启动成功

6、使用

查看数据

keys *

设置值

 set oneKey 测试

获取值

get oneKey

二、安装中的碰到的问题和解决办法

问题一:

WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.

临时解决办法:

echo 511 > /proc/sys/net/core/somaxconn

永久解决办法

vi /etc/sysctl.conf

在里面添加net.core.somaxconn= 1024 然后执行sysctl -p 就可以永久消除这个warning

问题二:

WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.

可以参考问题一的解决

问题三:

WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled

执行命令echo never>/sys/kernel/mm/transparent hugepage/enabled

永久解决添加配置文件即可

vi /etc/rc.local

三、怎么在代码中使用安装的redis呢

需要引用的jar包有

commons-pool-1.6.jarjedis-2.9.0.jar

示例代码

 public static void main(String[] args) { //创建redis对象 String ip = ""; Jedis jedis=new Jedis(ip,6379);//链接redis //记录操作个数 jedis.set("name

redis jar包_「建议收藏」手把手教你从零搭建一个redis服务相关推荐

  1. redis 端口_「建议收藏」手把手教你搭建redis集群

    前言 在生产中单机的redis服务不能保证程序的高可用,所以有时需要我们来搭建一个redis集群,保证某一台redis服务挂了的时候,我们的服务还可以保证正常运行. 单机redis的搭建,可以参考我的 ...

  2. 程序员交流平台_「建议收藏」10个适合程序员逛的在线社区

    这是一个开源的时代, 网络资源是学习的重要工具, 对于编程学习, 网上的社区氛围浓厚.分享全面, 非常有助于技术的提升. 今天,就和大家分享几个自己经常逛的技术类社区和论坛: 1.gitHub 网站地 ...

  3. 你认为黑客入侵很难?其实很简单,黑客养成手册「建议收藏」

    大家好,又见面了,今天给大家分享个黑客养成手册「建议收藏」. 入侵他人电脑 你是不是想学习到一些关于盗号.攻击别人计算机-的方法? 其实这些方法很简单!现在就有个机会来了!我为大家讲解! 首先申明这类 ...

  4. 应用架构、业务架构、技术架构和业务流程图详解「建议收藏」

    应用架构.业务架构.技术架构和业务流程图详解「建议收藏」 应用架构(ApplicationArchitecture)是描述了IT系统功能和技术实现的内容.应用架构分为以下两个不同的层次:企业级的应用架 ...

  5. spring boot jar包_「Spring Boot 新特性」 jar 大小自动瘦身

    自动分析瘦身 Spring Boot 项目最终构建处理 JAR 包大小一直是个诟病,需要把所有依赖包内置最终输出可运行的 jar.当然可以使用其他的插件扩展 实现依赖 JAR 和 可运行 jar 分离 ...

  6. composer 安装dev包_「PHP编程」如何搭建私有Composer包仓库?

    在前一篇文章「PHP编程」如何制作自己的Composer包?中,我们已经介绍了如何制作自己的 composer 包,以及如何使用 composer 安装自己制作的 composer 包.不过,这其中有 ...

  7. Activity-的-36-大难点,你会几个?「建议收藏」

    前言 学 Android 有一段时间了,一直都只顾着学新的东西,最近发现很多平常用的少的东西竟让都忘了,趁着这两天,打算把有关 Activity 的内容以问题的形式梳理出来,也供大家查缺补漏. 本文中 ...

  8. 「建议收藏」Pycharm使用教程(非常详细,非常实用)

    Pycharm使用教程 1. Jetbrains家族和Pycharm版本划分: pycharm是Jetbrains家族中的一个明星产品,Jetbrains开发了许多好用的编辑器,包括Java编辑器(I ...

  9. python画图包_「Python量化」股票分析入门

    目前,获取股票数据的渠道有很多,而且基本上是免费的,比如,行情软件有同花顺.东方财富等,门户网站有新浪财经.腾讯财经.和讯网等.Python也有不少免费的开源api可以获取交易行情数据,如pandas ...

  10. redis 清空缓存_「镜头回放」简直了!spring中清除redis缓存导致应用挂死

    异常场景 springWeb应用一直运行正常,同事最近反应,每次版本更新完毕,刷新缓存,就会导致应用挂死.只有重启redis应用才恢复正常. 项目概况 springWeb项目,常用配置表做了redis ...

最新文章

  1. 为了给女朋友买件心怡内衣,我用Python爬虫了天猫内衣售卖数据
  2. rpgmaker mv修改_吴青峰版一点点MV 释出,唱作女帝陈珊妮执导
  3. 图像检索中相似度度量公式:各种距离
  4. RHEL7.0系统相关配置
  5. 吴恩达 coursera ML 第十二课总结+作业答案
  6. 劳心者、劳力者或CEO、CTO各得其所,足矣
  7. 如何构建自己的免费无服务器评论框
  8. Linux C 深入分析结构体指针的定义与引用
  9. 前端学习(590):调试javascript的流程
  10. 天天说常识推理,究竟常识是什么?
  11. MySQL自动建立集合自动分片_1.mongodb初步使用总结
  12. Windows 11的19个新功能
  13. WEB标准 基础(一) 到底是什么?
  14. web前端开发最佳实践_Web开发人员和设计师的最佳黑色星期五优惠
  15. 美赛整理之Matlab的工程数学计算学习笔记(高等数学)
  16. 机器学习之实战matlab神经网络工具箱
  17. STM32F1--FreeRTOS系统移植运行报错:L6218E:Undefined symbol xTaskGetSchedulerState (referred from delay.o)
  18. /dev/sda is entire device, not just one partition. Refusing to make a filesystem here
  19. ubuntu 20.04 修改文件夹默认图标
  20. React-组件公共逻辑抽离的两种方式

热门文章

  1. docker常用到的一些命令
  2. 项目Alpha冲刺Day3
  3. 有很多种方法来解决八数码
  4. JBoss环境搭建及部署Web项目
  5. Webservice 实践
  6. char* char [] 区别[zz]
  7. 如何在水晶报表9中实现选择打印机打印?
  8. leetcode刷题日记-两数之和系列
  9. 【LeetCode】【数组】题号:*498,对角线遍历
  10. 【python|opencv】cv2.imread返回None,无法正确读取图片