Redis单机版安装
操作系统:CentOS 7
Redis版本:6.2.1
一、编译源码安装:
(1)cd /
进入根目录
(2)cd usr
进入usr目录,将此目录作为Redis的安装目录
(3)wget https://download.redis.io/releases/redis-6.2.1.tar.gz
通过wget下载Redis安装包
①未找到命令
若还没有安装wget工具,运行wget命令会显示未找到命令
②yum install wget
安装wget工具。
(4)再次运行步骤(3)中的命令:wget https://download.redis.io/releases/redis-6.2.1.tar.gz
(5)ls
查看当前目录的文件,会看见已经下载的Redis安装包
(6)tar -zvxf redis-6.2.1.tar.gz
解压Redis安装包
(7)ls
查看当前目录,会看见解压得到的文件夹redis-6.2.1
(8)cd redis-6.2.1
进入redis-6.2.1文件夹,查看文件夹下文件内容
(9)make
编译Redis
①cc:命令未找到
编译出错,需要安装gcc
②yum install gcc-c++ -y
安装gcc
③安装完成之后,再次执行make编译。
④仍然错误,解决:执行make MALLOC=libc
(10)cd src
进入src查看文件。图中绿颜色的文件在编译之前是没有的,正确编译之后才产生。
redis-cli:启动Redis客户端
redis-server:启动Redis服务端
(make编译之前的文件内容)
二、查看redis.conf
redis.conf里面包含了Redis的相关配置,Redis服务端在启动的时候会读取文件中的设置的参数来完成配置,比如服务端口号,RDB和AOF持久化规则等。
具体的配置的作用就不在此一一展开说明了,这里关注port配置,用于配置Redis服务的端口号,默认为6379,即Redis服务以暴露6379端口号对外提供服务。
三、运行Redis服务端
(1)在src目录下的redis-server用于启动Redis服务端。
(2)redis-server —help
查看redis-server帮助命令。
- ./redis-server
运行Redis服务,使用默认的redis.conf配置
- ./redis-server /path/to/redis.conf
指定redis.conf配置文件路径运行Redis服务
- ./redis-server -v 或 ./redis-server —version
查看redis版本信息
- ./redis-server -h 或 ./redis-server —help
查看redis-server命令的帮助信息
①在src目录下,直接运行redis-server —help会报错:未找到命令
②使用./redis-server —help
(3)启动Redis服务
①./redis-server
直接运行redis-server,不指定配置文件则使用默认配置,默认配置是在程序代码中设置的。
②./redis-server /usr/redis-6.2.1/redis.conf
指定配置文件启动
③默认运行方式不是守护运行的,可使用Ctrl+C结束服务。
④守护进程运行,修改redis.conf配置。将daemonize设置成yes,默认为no
四、运行Redis客户端
(1)在src目录下的redis-cli用于启动Redis客户端。
(2)redis-cli —help
运行./redis-cli —help查看命令的帮助信息
- -h
指定连接的Redis服务端的主机地址,比如:127.0.0.1。不指定默认为127.0.0.1,连接本地Redis服务端。
- -p
指定连接的Redis服务端的端口号。不指定默认为6379。
(3)启动客户端,连接Redis服务端
运行./redis-cli连接Redis服务端,主机地址为127.0.0.1,端口号为6379。
指定主机地址和端口号连接Redis服务。
客户端通过exit退出。
五:Java客户端Jedis连接
(1)引入Jedis依赖
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.8.0</version>
</dependency>
(2)使用Jedis操作Redis
public class Main {
public static void main(String[] args) {
// Redis服务所在服务器地址
String host = "192.168.187.128";
// Redis服务端口号
int port = 6379;
Jedis jedis = new Jedis(host, port);
jedis.set("hello", "world");
String result = jedis.get("hello");
System.out.println("从redis获取值:"+result);
}
}
补充:
若Redis客户端与Redis服务端不在同一台服务器上时,如果Redis服务已经正常启动,并且服务器也没有受到防火墙的限制,然而客户端还是无法连接到服务端。此时需要修改服务端的redis.conf配置:bind
bind配置用于将Redis服务绑定到设置的IP地址上,默认为127.0.0.1,即客户端可以通过127.0.0.1地址访问此服务端。需要不同服务器上的客户端访问,可以将此项配置注释掉,或者配置此服务器的IP地址。修改完配置后,重启Redis服务:
方式①注释掉bind配置,并将protected-mode配置成no,关闭保护模式。
方式②配置当前Redis服务端所在的服务器IP
我的Redis服务所在的服务器地址为192.168.187.128,设置为此之后,可以通过192.168.187.128连接Redis服务了。(如下图的配置,可以使用192.168.187.128与127.0.0.1两个IP地址访问)
(关于bind,个人感觉和port作用相似,port用于暴露端口号,bind用于暴露服务主机地址)
还没有评论,来说两句吧...