第一:下载
1.直接在官网下载
2.使用wget命令下载:
wget http://download.redis.io/releases/redis-4.0.2.tar.gz
- 1
在“/usr/local”目录下创建redis目录:
mkdir redis
- 1
下载的redis-4.0.2.tar.gz放在redis目录下。
第二:解压安装
解压:
tar -zxvf redis-4.0.2.tar.gz
- 1
进入redis-4.0.2目录并执行编译命令make:
make
- 1
等几分钟,过程可能比较慢,正常情况下是不会报错的,如下图:
说明安装成功了。
执行安装命令:
make install
- 1
结果如下:
OK,安装成功
第三:改配置
用vi工具打开redis-4.0.2目录下的redis.conf配置文件:
vi redis.config
- 1
1.设置redis可以一直在后台运行,以守护进程方式运行,即关闭SSH工具程序也在运行。
daemonize no 改成 daemonize yes
2.默认的话redis-server启动时会在当前目录生成或读取dump.rdb,可以指定生成的路径
dir ./ 改成 dir /usr/local/redis/
3.指定是否在每次更新操作后进行日志记录,Redis在默认情况下是异步的把数据写入磁盘,如果不开启,可能会在断电时导致一段时间内的数据丢失。 因为 redis本身同步数据文件是按上面save条件来同步的,所以有的数据会在一段时间内只存在于内存中。默认为no
appendonly no 改成 appendonly yes
4.默认redis是只能内网127.0.0.0访问,如果想外网访问需要修改绑定的地址
bind 127.0.0.1 改成 bind 0.0.0.0
改成任何IP都能访问的,当然这里也可以绑定单独的IP
5.修改保护模式,不修改保护模式也是只能内网访问的
protected-mode yes 改成 protected-mode no
6.设置密码
将”# requirepass foobared“ 取掉注释改成 requirepass 123
保存文件
别忘了在阿里云后台给6379增加安全组配置。
第四:启动
启动redis服务
./src/redis-server redis.conf
- 1
注意这里必需指定redis.conf文件,如果不指定,会加载默认的配置,那我们的修改其实也不会生效(理论上讲redis.conf不指定应该没问题,但这里不行),会出现各种问题,小心哦。
验证服务是否启动:
ps aux|grep redis
- 1
结果如下:
说明启动成功了。
关闭启动的窗口,重新打开个命令终端,然后测试是否在后台运行,结果和上面一样,说明不论SSH是否关闭,redis服务都会在后台以守护进程方式运行。
第五:用redis-cli测试内网
运行命令,连接客户端:
./src/redis-cli -a 123
备注:redis-cli -h 实例连接地址 -a 密码
- 1
- 2
执行set和get命令如下:
成功取出的age为12,说明内网没问题
第六:用java测试外网
创建一个java项目,新new一个Test.java类,代码如下:
package com.sea;
import redis.clients.jedis.Jedis;
/**
* @author chenyuan
* @version 创建时间:2017年11月13日 下午1:58:50
* @ClassName 类名称
* @Description 类描述
*/
public class Test {
public static void main(String[] args) {
try {
String host = "ip地址";// 控制台显示访问IP地址
int port = 6379;
Jedis jedis = new Jedis(host, port);
// 鉴权信息
jedis.auth("123");// password
String key = "redis";
String value = "aliyun-redis";
// select db默认为0
jedis.select(1);
// set一个key
jedis.set(key, value);
System.out.println("Set Key " + key + " Value: " + value);
// get 设置进去的key
String getvalue = jedis.get(key);
System.out.println("Get Key " + key + " ReturnValue: " + getvalue);
jedis.quit();
jedis.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
注意这里选择了索引号是1的数据库,redis有16个数据库,默认选索引号0的数据库。
运行结果如下:
Set Key redis Value: aliyun-redis
Get Key redis ReturnValue: aliyun-redis
- 1
- 2
- 3
说明连接并存储成功了,并且取数据也成功了。
使用redis-cli再验证一样,注意数据是存丰1号数据库的,故要切换一下数据库。
结果如下:
总结
redis.conf里有很多配置,到用时再百度一下吧。