快捷搜索:

阿里云下Linux服务器安装Redis

2019-11-28 作者:励志美文   |   浏览(146)

 

下载源码

推行命令
wget http://download.redis.io/releases/redis-2.8.3.tar.gz

图片 1

什么是Redis?

解压

图片 2

Redis是多少个足以悠久化的缓存框架,扶助布满式缓存,简单易用。相符的框架还会有memcached,是一个Key-Value情势存款和储蓄的缓存框架。

将其活动到usr/local目录下同仁一视命名字为redis

图片 3

 

4个CPU举办编写翻译

make -j4

图片 4

能够看做缓存的框架有:

将编写翻译后的文件增多到运营目录

make install

图片 5

将程序安装至系统中。假设原始码编写翻译正确,且奉行结果准确,便能够把程序安装至系统预设的可履行文件寄放路径

EHCache

查阅服务器

图片 6

MongoDB 更偏向存款和储蓄,并不是缓存

查看配置文件 redis.conf(文件不短,仅截取第后生可畏页)

vi redis.conf

图片 7

Redis 更趋势于缓存,而非存款和储蓄

纠正配置文件参数

Memcached

bind参数:即允许钦定ip访谈redis服务器,暗中认可本机手艺访谈(127.0.0.1),在那改成如下(允许任性ip访谈)

图片 8

 

daemonize参数:守护线程,用来钦点redis是还是不是要用守护线程的方法运转。默许是no

  • daemonize:yes
    代表开启守护进度形式。redis接纳的是单进度八线程的情势。在该情势下,redis会在后台运营,并将经过pid号写入至redis.conf选项pidfile设置的文件中,那时候redis将直接运转,除非手动kill该进程。
  • daemonize:no
    方今分界面将跻身redis的通令行分界面,exit强制退出也许关闭连接工具(putty,xshell等)都会形成redis进度退出。

修改为yes

图片 9

daemonize:yes

Redis的设置和安顿

启动redis服务

图片 10

1、先安装gcc

查阅进程号

图片 11

yum -y install gcc

访问

图片 12

redis-cli

redis的安装和利用手续

基本的set/get操作

图片 13

安装密码

图片 14

 

之后关闭比量齐观启redis服务

图片 15

步骤:

亟待密码重登录

图片 16

一、安装

做客redis的utils目录将redis设置为系统服务

图片 17

 wget
 tar xzf redis-3.2.9.tar.gz
 cd redis-3.2.9

考察服务注册信息

图片 18

make MALLOC=libc

翻开情况音讯

图片 19

image.png

二、启动Redis服务

至此redis服务已经设置收尾

 src/redis-server

要是要由此Java远程连接到Redis服务,还必要改善redis.conf文件

Java远程连接Linux服务器中的Redis

安顿Linux服务器上的Redistribution服务,允许远程调用。

修改Redis的布署文书档案

在redis安装目录下的redis.conf文件中的如下内容:

1、注释掉redis安装目录下的redis.conf文件中的如下数据:bind 127.0.0.1,改过后为#bind 127.0.0.1

2、改良尊崇形式为非:默以为protected-mode yes ,校订后为protected-mode no

3、设置redis连接密码:找到#requirepass foobared ,在底下加多requirepass 123456

接下来运转redis server:

./redis-server redis.conf

 

在以上进程中恐怕会须求重启redis server,终止和重启的指令如下:

1、终止,通过杀死redis的经过

kill -9 进度ID (解释:-9的含义是遏抑杀死卡塔尔

 

经过ID可以透过如下命令查询:

ps -ef | grep 'redis'

三、运转客商端并测量检验

src/redis-cli

带密码的启航方式

./redis-cli -h 127.0.0.1 -p 6379 -a 123456

-h 是主机IP地址

-p 是端口号

-a 是密码

 

末段在Java代码中调用Redis。(使用Jedis形式调用卡塔 尔(阿拉伯语:قطر‎

1、导包:

图片 20图片 21

1 <!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
2 <dependency>
3     <groupId>redis.clients</groupId>
4     <artifactId>jedis</artifactId>
5     <version>2.9.0</version>
6 </dependency>

View Code

2、代码:

图片 22图片 23

1 JedisShardInfo sharInfo = new JedisShardInfo("192.168.72.188", 6379);
2   sharInfo.setPassword("123456");
3   Jedis jedis = new Jedis(sharInfo);
4   String result = jedis.set("name", "zhangsan");
5   System.out.println(result);
6   String name = jedis.get("name");
7   System.out.println(name);
8   jedis.close();

View Code

3、Java中Redis池

图片 24图片 25

 1 JedisPoolConfig config = new JedisPoolConfig();
 2   config.setMaxIdle(1000);//最大空闲时间
 3   config.setMaxWaitMillis(1000); //最大等待时间
 4   config.setMaxTotal(500); //redis池中最大对象个数
 5   
 6   JedisShardInfo sharInfo = new JedisShardInfo("192.168.72.188", 6379);
 7   sharInfo.setPassword("123456");
 8   List<JedisShardInfo> list = new ArrayList<JedisShardInfo>();
 9   list.add(sharInfo);
10   ShardedJedisPool pool = new ShardedJedisPool(config, list);
11   ShardedJedis jedis2 = pool.getResource();
12   jedis2.set("haha", "测试");
13   System.out.println(jedis2.get("haha"));

View Code

唯恐会冒出的BUG:

图片 26图片 27

redis.clients.jedis.exceptions.JedisDataException: MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details about the error.
 at redis.clients.jedis.Protocol.processError(Protocol.java:127)
 at redis.clients.jedis.Protocol.process(Protocol.java:161)
 at redis.clients.jedis.Protocol.read(Protocol.java:215)
 at redis.clients.jedis.Connection.readProtocolWithCheckingBroken(Connection.java:340)
 at redis.clients.jedis.Connection.getStatusCodeReply(Connection.java:239)
 at redis.clients.jedis.Jedis.set(Jedis.java:121)
 at redis.clients.jedis.ShardedJedis.set(ShardedJedis.java:43)
 at com.javen.redis.RedisTest.testHelloWorld(RedisTest.java:29)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:497)
 at junit.framework.TestCase.runTest(TestCase.java:154)
 at junit.framework.TestCase.runBare(TestCase.java:127)
 at junit.framework.TestResult$1.protect(TestResult.java:106)
 at junit.framework.TestResult.runProtected(TestResult.java:124)
 at junit.framework.TestResult.run(TestResult.java:109)
 at junit.framework.TestCase.run(TestCase.java:118)
 at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:131)
 at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
 at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
 at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
 at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
 at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)

View Code

解决:

报到到redis客商端,然后输入如图黑色方框中的命令:

图片 28

config set stop-writes-on-bgsave-error no

 

本文由亚洲必赢官方登录发布于励志美文,转载请注明出处:阿里云下Linux服务器安装Redis

关键词:

  • 上一篇:没有了
  • 下一篇:没有了