centos7远程服务器中redis的安装与java连接
1.下载安装redis
在远程服务器中你想下载的位置执行以下命令来下载redis文件到服务器中
$ wget http://download.redis.io/releases/redis-4.0.9.tar.gz
说明:$是指你的当前目录,不是命令的一部分,wget命令用来下载网上资源,后面的地址是网上资源路径,你可以去redis官网上查找你想下载的redis版本的下载路径
解压文件
$ tar xzf redis-4.0.9.tar.gz
编译文件$ cd redis-4.0.9
$ make注意:如果在make时报错有如下原因
1.没有安装gcc(因为redis是用c写得),并且是4以上版本需要执行 yum install gcc
2.有可能也要安装gcc++,需要执行 yum install gcc++
3.如果要用make test命令测试redis,还需要安装tcl,命令为 yum install tcl2.启动redis服务和客户端
在redis-4.0.9(解压编译目录)下执行
$ src/redis-server
这样就启动了服务,界面会出项相应的启动信息
现在再来启动客户端
$ src/redis-cli 3.使用java客户端访问远程redis服务
因为redis本身默认是不支持远程地址访问的,所以我们需要先配置一下redis
1.编辑安装目录下的redis.conf文件,注释掉本地ip绑定,
#bind 127.0.0.1
2.在本地客户端中设置登录密码
$ config set requirepass mypwd
这样基本就可以啦
具体的这块配置参考:
https://www.cnblogs.com/y-l-h/p/7930085.html
https://www.cnblogs.com/machanghai/p/5497043.html 接下来在开发工具中创建maven项目,添加jedis依赖
<dependencies>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
</dependencies>
编写客户端
import redis.clients.jedis.Jedis;
public class RedisTest {
public static void main(String[] args) {
//create your redis ip address
String redisIp = "";
//Connecting to Redis server on cloud server
Jedis jedis = new Jedis(redisIp);
//authentication password
jedis.auth("12358");
System.out.println("Connection to server successfully");
//check whether server is running or not
System.out.println("server is running: "+jedis.ping());
}
}
结果如下,表示连接成功
Connection to server successfully
server is running: PONG
其他问题:之前用阿里的云服务器进行redis远程连接时会报错
xception in thread "main" redis.clients.jedis.exceptions.JedisConnectionException: java.net.SocketTimeoutException: connect timed out
at redis.clients.jedis.Connection.connect(Connection.java:207)
at redis.clients.jedis.BinaryClient.connect(BinaryClient.java:93)
at redis.clients.jedis.Connection.sendCommand(Connection.java:126)
at redis.clients.jedis.Connection.sendCommand(Connection.java:117)
at redis.clients.jedis.BinaryClient.auth(BinaryClient.java:564)
at redis.clients.jedis.BinaryJedis.auth(BinaryJedis.java:2138)
at top.pancras.redis.RedisTest.main(RedisTest.java:11)
Caused by: java.net.SocketTimeoutException: connect timed out
at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at redis.clients.jedis.Connection.connect(Connection.java:184)
... 6 more
防火墙没有开启,不是防火墙的问题,主要在于阿里的云服务想要对外开放端口还需要在其官网进行配置才可以,参考http://www.cnblogs.com/coffee9527/p/8711906.html,把端口改成你要开放的端口应该就可以啦
centos7远程服务器中redis的安装与java连接的更多相关文章
- 附加进程 到远程服务器中Docker容器内 调试
很多时候,我们在本地开发过程中程序运行很正常,但是发布到线上之后由于环境的原因,可能会有一些异常.通常我们会通过日志来分析问题,除了日志还有一种常用的调试手段就是:附加进程. VS中的附加进程非常强大 ...
- shell实践(一)---判断远程服务器中文件是否存在
1.判断一个文件的常见形式为 if [ -f filename ] #此处有-e和-f的区别 注意: 1)中括号之间的空格: 2)filename最好是绝对路径,在判断远程服务器中文件是否存在时尤为 ...
- Laravel 5.1中 Redis 的安装配置及基本使用教程
关于Redis的介绍我们在之前Laravel 缓存配置一节中已有提及,Redis是一个开源的.基于内存的数据结构存储器,可以被用作数据库.缓存和消息代理.相较Memcached而言,支持更加丰富的数据 ...
- Linux中Redis的安装
一.下载redis redis官网地址:http://www.redis.io/ 下载地址:http://download.redis.io/releases/ redis中文文档地址:http:// ...
- redis的安装和pip连接
一.首先说说我的环境. 操作系统:Ubuntu16.04 能联网(使用了桥接方式) 二.安装redis cd进一个文件夹. 控制台输入 weget http ...
- centos 中 redis 的安装
安装流程 Wget http://download.redis.io/releases/redis-5.0.4.tar.gz tar xzf redis-5.0.4.tar.gz mv redis-5 ...
- php中redis的安装
1.当你在使用php时出现下面的问题 2.通过phpinfo()查看php的版本 我的是php5.6版本 3.查看需要下载的redis的版本 4.点击下面的额链接下载redis:http://wind ...
- Ubuntu中Redis的安装与使用
安装 安装Redis服务器端 apt-get install redis-server 安装完成后,Redis服务器会自动启动,我们检查Redis服务器程序. 检查Redis服务器系统进程 ps -a ...
- Linux中redis的安装与配置
redis官网地址:http://www.redis.io/ redis安装 在Linux下安装Redis非常简单,这里以2.8.3版本为例,具体步骤如下: 1.下载源码,解压缩后编译源码. $ mk ...
随机推荐
- Pandas进阶之提升运行效率
前言 如果你现在正在学习数据分析,或者正在从事数据分析行业,肯定会处理一些大数据集.pandas就是这些大数据集的一个很好的处理工具.那么pandas到底是什么呢?官方文档上说: " 快速, ...
- Css制作table细线表格
制作细线表格,我想应该是最基本的css知识了,记录下来巩固下. 推荐: table{ border-collapse:collapse; border: 1px solid #000000; } td ...
- ASE19团队项目beta阶段Backend组 scrum7 记录
本次会议于12月13日,19:30在微软北京西二号楼sky garden召开,持续10分钟. 与会人员:Hao Wang, Lihao Ran, Xin Kang 请假人员:Zhikai Chen 每 ...
- curl: (7) couldn't connect to host 解决方法
使用curl命令访问网站时报错: [root@bqh-119 ~]# curl -I www.test.com curl: (7) couldn't connect to host [root@bqh ...
- Proxy ARP
翻译自:https://ccieblog.co.uk/arp/proxy-arp Proxy ARP在一些路由器上是默认开启的.其思想是使两个不同子网上的主机,在没有配置默认网关的情况下,实现彼此通信 ...
- C# 直播录制视频
//项目引用 ffmpeg.exe 下载地址http://ffmpeg.org/ var time = DateTime.Now; ; //录制分钟 var fileName = Guid.NewGu ...
- C++ 输出PPM格式图片文件
PPM简介 学习图形学时为了直观地观察结果,需要输出图片,而PPM是一种最简单的图片格式,非常适合新手使用. PPM文件的内容大概是这样的: 第一行固定为P3,代表写入的是PPM格式的RGB图像,除此 ...
- socket 实现一个类似简单聊天室的功能(多客户端互相通信)
server端: #coding=utf-8 ''' 一个广播程序,linux运行 ''' import select,socket import traceback def broadcast(co ...
- TCP的三次握手与四次挥手的理解
本文经过借鉴书籍资料.他人博客总结出的知识点,欢迎提问 序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序号,第一个字节的编号由本地随机产生:给字节编上 ...
- for循环使用后contains方法失去效果
重写了cartInfo中的equals和hashcode方法 第一种方式:包含是可以的List<CartInfo> cookie = new ArrayList<CartInfo&g ...