linux下搭建redis并解决无法连接redis的问题

首先是搭建redis,这个比较简单。

1、检查安装依赖程序

yum install gcc-c++
yum install -y tcl
yum install wget

2、获取安装文件

wget http://download.redis.io/releases/这里面有很多版本,自己选择需要的下载

3、解压文件

自己新建一个目录将redis解压到里面

tar -zxvf redis-3.2.01.tar.gz
mv redis-3.2.01 /usr/local/redis

4、进入目录

cd /usr/local/redis

5、编译安装

make
make install

6、设置配置文件路径

mkdir -p /etc/redis
cp redis.conf/etc/redis

7、修改配置文件

 redis.conf是redis的配置文件,redis.conf在redis源码目录。

 注意修改port作为redis进程的端口,port默认6379。如果需要搭建redis集群,千万别忘了修改端口号。

redis有两种启动方式,直接运行bin/redis-server将以前端模式启动,前端模式启动的缺点是ssh命令窗口关闭则redis-server程序结束,不推荐使用此方法。如下图:

  后端模式启动

修改redis.conf配置文件, daemonize yes 以后端模式启动。推荐!

   打开redis.conf,使用命令 :/ daemonize 快速查找到daemonize然后修改。

vi /etc/redis/redis.conf
仅修改: daemonize yes (no-->yes)

8、启动

/usr/local/bin/redis-server /etc/redis/redis.conf

9、查看启动

ps -ef | grep redis

10、使用客户端

redis-cli
>set name david
OK
>get name
"david"

11.关闭客户端

redis-cli shutdown

12、开机启动配置

echo "/usr/local/bin/redis-server /etc/redis/redis.conf &" >> /etc/rc.local

开机启动要配置在 rc.local 中,而 /etc/profile 文件,要有用户登录了,才会被执行。

13、设置密码

因为这是给局域网内的很多人使用,所以设置一个访问密码很有必要。

修改redis.conf文件配置

使用命令 :/ requirepass 快速查找到 # requirepass foobared 然后去掉注释,这个foobared改为自己的密码。然后wq保存。

14、重启redis

sudo service redis restart  这个时候尝试登录redis,发现可以登上,但是执行具体命令是提示操作不允许

  1. redis-cli -h 127.0.0.1 -p 6379
  2. redis 127.0.0.1:6379>
  3. redis 127.0.0.1:6379> keys *
  4. (error) ERR operation not permitted  

尝试用密码登录并执行具体的命令看到可以成功执行

  1. redis-cli -h 127.0.0.1 -p 6379 -a password
  2. redis 127.0.0.1:6379> keys *
  3. 1) "myset"
  4. 2) "mysortset"
  5. redis 127.0.0.1:6379> select 1
  6. OK

如果是自己在本机上使用现在已经可以了,因为我这是局域网内提供给大家使用的所以还需要最后的配置。

当时修改开发的配置文件后,启动项目报错。

org.springframework.data.redis.RedisConnectionFailureException: Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool
    at org.springframework.data.redis.connection.jedis.JedisConnectionFactory.fetchJedisConnector(JedisConnectionFactory.java:162) ~[spring-data-redis-1.5.0.RELEASE.jar:1.5.0.RELEASE]
    at org.springframework.data.redis.connection.jedis.JedisConnectionFactory.getConnection(JedisConnectionFactory.java:251) ~[spring-data-redis-1.5.0.RELEASE.jar:1.5.0.RELEASE]
    at org.springframework.data.redis.connection.jedis.JedisConnectionFactory.getConnection(JedisConnectionFactory.java:58) ~[spring-data-redis-1.5.0.RELEASE.jar:1.5.0.RELEASE]
    at org.springframework.data.redis.core.RedisConnectionUtils.doGetConnection(RedisConnectionUtils.java:128) ~[spring-data-redis-1.5.0.RELEASE.jar:1.5.0.RELEASE]

打开cmd 然后使用 telnet ip 端口 来ping 配置的redis(要保证redis已启动),发现无法ping通。

这是因为在redis.conf中有个配置 bind 127.0.0.1 这个是默认只有本机访问,把这个注释掉就好了,注释以后查看redis进程就变为下面这样:

[[email protected] redis]# ps -ef | grep redis
root      5655     1  0 11:40 ?        00:00:23 ./redis-server *:6379
root     21184 18040  0 17:33 pts/1    00:00:00 grep --color=auto redis

这个*号就表示允许其它用户访问了。然后在用打开本机的 cmd使用 telnet ip 端口 就能ping通了。

以上是全部内容,不足之处欢迎指出,互相交流才有进步!

原文地址:https://www.cnblogs.com/cfas/p/9348908.html

时间: 2025-01-13 06:57:20

linux下搭建redis并解决无法连接redis的问题的相关文章

Linux下搭建简单的DHCP服务器

在RHEL6.5下搭建简单的DHCP服务器 实验目标 1.为192.168.10.0/24网段的客户机自动配置网络参数 用来给客户机自动分配地址的IP地址范围是:192.168.10.50-192.168.10.100.192.168.10.120-192.168.10.200 客户机的默认网关地址设为192.168.10.1 客户机所使用的DNS服务器设为202.106.0.20.8.8.8.8,默认域后缀是"tarena.com" 将默认租期设为2小时,最大租期设置为4小时 2.为

在Linux平台上用ASP.NET 5 连接Redis服务器

最近在做一个Linux平台上基于ASP.Net 5 中间件+Redis+Mysql架构的系统,研究使用了 StackExchange.Redis 作为asp.net5连接redis的工具.作者在前几天开了一个新的分支"CoreCLR"开始对asp.net5的进行升级开发.并且有一个pull request跟踪相关的问题.在Windows开发机上测试一切都可以正常执行.迁移到Linux上的Docker容器里执行后发现,asp.net5的中间件程序在通过StackExchange.Redi

Linux下搭建PXE服务器安装Linux系统

PXE服务器安装与配置 花了一个星期主要研究这个,查阅了国内外相关的资料,发现这方面的东西还是比较少的,至少还没有完备的一个体系,这次测试过程发布出来 希望能帮助到一些人,有什么不懂得可以提出来,大家一起讨论. 原理: PXE是在没有软驱.硬盘.CD-ROM的情况下引导计算机的一种方式,也就是BIOS将使用PXE协议从网络引导. DHCP服务器:用来动态分配IP地址(同时分配子网掩码.网关.TFTP服务器地址.启动文件名.DNS服务器.时间服务器等等). TFTP服务器:用来提供启动文件的下载

Linux下搭建Java开发环境

Red Hat Package Manager 简称rpm rpm格式的文件就是我们可以使用RPM命令进行管理的软件包格式的文件 JDK的安装 #sh /root/Desktop/jdk-6u23-linux-i586-rpm.bin .bin 可以使用sh命令来解压执行 Linux的用户的登录过程 /etc/profile /etc/profile.d(各个脚本) /etc/bash.bashrc /home/[username]具体用户目录/.bashrc .bash_profile JDK

Linux下adb驱动问题Linux下使用手机USB调试模式连接ADB进行Android程序的调试

Linux 下adb 驱动问题 Linux下使用手机USB调试模式连接ADB进行Android程序的调试,配置驱动没有Windows来的直观. 具体步骤首先确认手机连接上电脑,lsusb查看下设备记录. [email protected]:~$ lsusb Bus 007 Device 009: ID 18d1:4e12 Bus 007 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 006 Device 001: ID 1d

linux 下 搭建邮件邮件服务器(Postfix+Dovecot)(三) 使用 maildrop 投递邮件

 linux 下 搭建邮件邮件服务器(Postfix+Dovecot)(三) 使用 maildrop 投递邮件 十六.配置postfix使用maildrop投递邮件 maildrop是一个使用C++编写的用来代替本地MDA的带有过滤功能邮件投递代理,是courier邮件系统组件之一.它从标准输入接受信息并投递到用户邮箱:maildrop既可以将邮件投递到mailboxes格式邮箱,亦可以将其投递到maildirs格式邮箱.同时,maildrop可以从文件中读取入站邮件过滤指示,并由此决定是将邮件

Linux下搭建VPN服务

转载需注明原文地址 http://mushapi.com/vpn-server-on-linux.html 最近google封锁的愈发严实了,所以不得不考虑弄个常备的VPN了.之前也用过买的vpn但是我用的那家vpn的官网也被封锁了,所以只能自己动手喽-本文是我安装完成后根据记忆写的,可能有不准确的地方,欢迎留言告诉我. 一.安装所需软件 在linux上搭建一个vpn server需要有iptables.ppp.pptpd.其中iptables和ppp可以直接通过yum安装. 1 yum ins

Linux下搭建jenkins+svn+http+maven自动化部署

服务器设置: 卸载redhat的yum,安装centos的yum,配置第三方yum 1.删除redhat原有的rpm -qa |grep yum |xargs rpm -e yum --nodeps 2.下载yum安装文件,如果下载时找不到文件,http://mirrors.163.com/centos/6/os/x86_64/ wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-3.2.27-14.el6.centos.noa

Linux下搭建DNS服务

Linux下搭建DNS服务器 注:本文主要侧重DNS的配置,原理的话会另发一篇文章~ 一.DNS(域名系统)作用和原理 1.  DNS的作用: 正向解析:根据域名查找对应的IP地址 反向解析:根据IP地址找对应的域名 2.  DNS的工作模式: 递归查询 迭代查询 3.  域名结构 分层式的结构,且上层只管理下层域名,便于管理维护. 二.BIND服务简介 1.Linux下常用的DNS服务是BIND(BerkeleyInternet Name Domain) 官方站点:https://www.is