Redis源码编译安装和Docker安装

📕作者:喜欢水星记

🏆系列:NoSQL之Redis

🔋收藏:本文记录我搭建过程供大家学习和自己之后复习,如果对您有用,希望能点赞收藏加关注

源码编译安装Redis

下载安装包

wget http://download.redis.io/releases/redis-5.0.8.tar.gz

image-20230725123852702

(redis-5.0.8的版本号可以根据自己的需求修改,最好是5.x的版本,太高或太低在编译的时候可能会报错)

如果提示没有wget命令,则需要安装

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

yum -y install wget

解压下载好的压缩包

tar -zxvf redis-5.0.8.tar.gz

将新解压的压缩包移动至/opt目录下

mv redis-5.0.8 /opt/

cd /opt/

ls

[root@zabbix-agent ~]# mv redis-5.0.8 /opt/
[root@zabbix-agent ~]# ls
anaconda-ks.cfg  redis-5.0.8.tar.gz  test
[root@zabbix-agent ~]# cd /opt/
[root@zabbix-agent opt]# ls
containerd  redis-5.0.8

进入好解压的目录,开始编译

cd /opt/redis-5.0.8/

make

(编译时间会比较长,视性能而定,可能一分钟不到,可能会几分钟)

image-20230725124656201

注意:编译必须在redis-5.0.8的目录中进行

进入新生成的src目录,修改配置文件信息

cd /opt/redis-5.0.8/src

为了避免和原来的配置文件冲突,重新复制一个配置文件修改

mkdir myconf

cd myconf/

cp /opt/redis-5.0.8/redis.conf /opt/redis-5.0.8/src/myconf/

[root@zabbix-agent src]# mkdir myconf	# 新建一个目录存放配置文件
[root@zabbix-agent src]# cd myconf/
[root@zabbix-agent myconf]# cp /opt/redis-5.0.8/redis.conf /opt/redis-5.0.8/src/myconf/
[root@zabbix-agent myconf]# ls
redis.conf

vi redis.conf

修改守护进程,把 no 改为 yes 将Redis的服务端改为后台启动

image-20230725125313483

然后保存并退出

启动Redis

先启动Redis的服务端

cd /opt/redis-5.0.8/src/

./redis-server myconf/redis.conf

./redis-cli

[root@zabbix-agent src]# ./redis-server myconf/redis.conf
5576:C 25 Jul 2023 12:55:40.882 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
5576:C 25 Jul 2023 12:55:40.882 # Redis version=5.0.8, bits=64, commit=00000000, modified=0, pid=5576, just started
5576:C 25 Jul 2023 12:55:40.882 # Configuration loaded
[root@zabbix-agent src]# ./redis-cli

简单命令

127.0.0.1:6379> ping
PONG
127.0.0.1:6379> set name kaisa
OK
127.0.0.1:6379> get name
"kaisa"
127.0.0.1:6379> set num 233
OK
127.0.0.1:6379> get num
"233"

退出Redis

用PS命令查看redis进程,可以发现是有一个服务端和一个客户端的

[root@zabbix-agent ~]# ps -ef | grep redis
root       5577      1  0 12:55 ?        00:00:00 ./redis-server 127.0.0.1:6379
root       5581   1395  0 12:55 pts/0    00:00:00 ./redis-cli
root       5631   5606  0 13:11 pts/1    00:00:00 grep --color=auto redis

在Redis客户端中

shutdown (退出服务端)

exit (退出客户端)

127.0.0.1:6379> shutdown
not connected> exit

此时再查看Redis的进程,可以发现都服务端和客户端的进程都已经被退出了

[root@zabbix-agent ~]# ps -ef | grep redis
root       5634   5606  0 13:13 pts/1    00:00:00 grep --color=auto redis

Docker安装Redis

==前置条件:==服务器或虚拟机需要安装上Docker

如果没安装的可以查看我之前的一篇博客:安装Docker

拉取镜像

docker pull redis # 拉取镜像,不加版本号默认拉取最新版

docker images # 查看镜像

创建挂载目录

cd

mkdir -p /docker-data/redis

cd /docker-data/redis

拉取配置文件,并赋权

wget http://download.redis.io/redis-stable/redis.conf

chmod 777 redis.conf

image-20230725141754212

修改配置文件

vi redis.conf

一共有以下四处修改:

image-20230725142013404

image-20230725142132038

image-20230725142425719

image-20230725142504020

启动容器

docker run --name redis -p 6379:6379 -v /docker-data/redis/redis.conf:/etc/redis/redis.conf -v /docker-data/redis:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes

出现容器ID,没有报错,则启动成功

[root@zabbix-server redis]# docker run --name redis -p 6379:6379 -v /docker-data/redis/redis.conf:/etc/re                   dis/redis.conf -v /docker-data/redis:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes
99c509954992c3d237b9beedcde67ceca9dd128b13094f069c706cece9bb1b0a
[root@zabbix-server redis]# docker ps
CONTAINER ID   IMAGE     COMMAND                  CREATED          STATUS          PORTS                                       NAMES
99c509954992   redis     "docker-entrypoint.s…"   19 seconds ago   Up 19 seconds   0.0.0.0:6379->6379/tcp, :::6379->6379/tcp   redis

进入客户端控制台

docker exec -it redis redis-cli

进入控制台之后,因为之前在配置文件里面设置了密码,所以需要输入密码验证否则会报错

image-20230725143136315

输入:SHUTDOWN 退出

Logo

数据库是今天社会发展不可缺少的重要技术,它可以把大量的信息进行有序的存储和管理,为企业的数据处理提供了强大的保障。

更多推荐