centos 远程安装java程序_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依赖

redis.clients

jedis

2.9.0

编写客户端

importredis.clients.jedis.Jedis;public classRedisTest {public static voidmain(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,把端口改成你要开放的端口应该就可以啦

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值