双系统Redis安装保姆级教程

随笔3周前发布 孤晴
3 0 0

合集 – 代码知行(1)

1.双系统Redis安装保姆级教程07-11

收起

Hello, 这里是专注技术分享的意欢~

本篇将从 Linux(Ubuntu为例)Windows 两个平台讲解 Redis 的安装和部署, 文中重点针对 Redis 的安装, 采用单机部署的方式启动.

Linux将以最纯干净的系统环境开始, 从源码获取到编译环境安装再到运行配置手把手教学.

Windows平台将从github获取已经编译好的软件进行安装

Linux 平台

一. 源码获取

Redis 的官网 redis.io 可以轻松找到下载入口.

双系统Redis安装保姆级教程

进入下载页面后是 redis 提供的企业级应用工具, 要使用开源免费版本需要在下面找到 Install Redis from source 一栏, 下面提供的是多个不同的版本, 包括最新的非稳定版本, 这里建议使用的是稳定版本, 即 stable release.

双系统Redis安装保姆级教程

二. 编译源码

将tar包下载下来后在Linux系统下就可以进行解压并编译了.

2.1 安装编译环境

redis使用c语言开发, 测试和调试工具采用的是TCL, 所以在编译 Redis 之前需要先安装C语言编译器和TCL.

此外还 Redis 还需要通过 pkg-config 来获取编译相关信息

sudo apt install -y gcc tcl pkg-config

双系统Redis安装保姆级教程

注:

如已经安装了 GCC, pkg-config 或者是 TCL 也可以放心执行该命令, 不会产生任何冲突

如出现 could not get lock /var/lib/dpkg/lock-frontend, 是因为 apt 工具在执行其他任务, 大概率是更新 Ubuntu 的软件, 等待更新完毕或者是中止更新即可

2.2 解压redis的源码压缩包

# 后面的文件名需要自行确保无误, 
# 最好使用tab补全
sudo tar -zxvf redis-stable.tar.gz

双系统Redis安装保姆级教程

2.3 构建 redis

redis 解压后的文件夹中包含一个makefile, 可以使用make工具直接进行构建.

双系统Redis安装保姆级教程

# 进入文件夹之后直接执行make
sudo make && sudo make install

注:

如果系统没有make工具需要先安装make工具

sudo apt install -y make

make 是一个编译和安装软件的过程, 这个过程会消耗相当一段时间, 耐心等待吧~

当看到有提示为:

INSTALL redis-server
INSTALL redis-benchmark
INSTALL redis-cli

则表示make和make install都完成了

双系统Redis安装保姆级教程

三. 单机启动测试

3.1 前台启动

构建完成之后在 /usr/local/bin 目录下会出现 redis.

双系统Redis安装保姆级教程

因为 redis-server 被安装在该目录下, 所以在任何位置执行 redis-server 都能够启动, 但是该目录是需要 root 用户才有权限写入的, redis运行在退出之前需要将数据进行持久化, 为了避免无法退出, 需要使用 root 用户执行

sudo redis-server

不出意外你将能够看到 redis 的logo

双系统Redis安装保姆级教程

此时 Redis 只能够单机访问, 并且是前台运行, 只要终端关闭 Redis 也会停止运行

3.2 后台启动

为了让 redis 能够远程访问(毕竟 Redis 作为数据库肯定是要给服务器接入使用的), 需要对 redis 的运行配置做一定修改

在最开始解压源码出来的文件夹中就存在一个redis的配置文件, 我们只需要修改该配置文件然后指定使用该配置运行redis即可

保险起见需要先拷贝一份备份以防配置文件编写错误

cd ~/develop/redis-stable # 进入源码目录
cp ./redis.conf ./redis.conf.copy

双系统Redis安装保姆级教程

个人习惯将源码和软件分开放置, 所以我会在家目录下创建相应软件的工作目录

mkdir ~/develop/redis
mkdir ~/logs/redis
# 将配置文件搬到工作目录中
cp ~/develop/redis-stable ~/develop/redis

ip限制解除

# 将 bind 127.0.0.0 -::1, 
# 127.0.0.1限制了ip只能是本机访问
# 修改为
bind 0.0.0.0 

端口修改

# 默认端口为 6379, 可以根据需要自行修改
port 6379

后台启动

# 以守护进程方式启动, 
# 类似Java的守护线程, 即后台运行
daemonize yes

pid文件位置修改

# pidfile /var/run/redis_6379.pid
pidfile /home/sika/develop/redis/redis_6379.pid

redis工作位置

# 工作目录默认是在当前目录,
# 会将日志、持久化文件等保存在此
# dir ./
# 修改为自己家目录下对应的位置
dir /home/sika/develop/redis

最大内存

maxmemory 512mb

日志位置

logfile "/home/sika/logs/redis.log"

指定配置文件启动

# 任意位置下运行即可, 运行后保存数据退出, 
# 查看配置的内容是否生效
redis-server ~/develop/redis/redis.conf

因为设置了后台运行, 执行上面的启动命令后不会有任何提示

双系统Redis安装保姆级教程

此时就证明Redis配置无问题, 启动成功

你会注意到有这样一个提示:

WARNING Memory overcommit must be enabled!

这是因为 Redis 检测到系统的内存过量使用 (Memory Overcommit) 功能未启用。内存过量使用是指允许操作系统分配比实际可用内存更多的内存。启用内存过量使用可以让 Redis 处理大内存需求时更灵活,但也有可能导致系统因内存不足而崩溃。

要启用内存过量使用,你需要调整 Linux 内核的配置。

编辑 /etc/sysctl.conf 文件

sudo vim /etc/sysctl.conf

在文件末尾添加以下行:

# Redis的警告要求必须为1
vm.overcommit_memory = 1

然后执行以下命令使配置生效:

sudo sysctl -p

以下是 overcommit_memory 参数的不同取值和含义:

0: 让内核根据内存的可用性来决定是否允许内存过量使用。默认值。
1: 始终允许内存过量使用。
2: 只有在有足够的交换空间时才允许内存过量使用。

修改系统配置后重启redis查看是否还会有警告信息

# 使用redis-cli连接服务器后停止redis
$> redis-cli -a 123456 # 123456需要替换为你配置的密码
# 测试连接和服务器状态都正常
127.0.0.1:6379> ping
PONG # 如果响应此信息则没问题
127.0.0.1:6379> SHUTDOWN

清空日志文件

$> echo "" > ~/logs/redis.log
# 重启redis查看警告信息
redis-server ~/develop/redis/redis.conf

双系统Redis安装保姆级教程

警告信息已经消除, 单机运行无问题.

四. 开机自启

源码编译和安装只是将软件安装到系统中, 不会自行注册系统服务. 要让redis能够成为系统服务需要手动编写服务脚本.

新建系统服务文件

sudo vim /etc/systemd/system/redis.service

编辑启动脚本

[Unit]
Description=redis-server
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /home/sika/develop/redis/redis.conf
privateTmp=true

[Install]
WantedBy=multi-user.target

重载系统服务让服务脚本生效

sudo systemctl daemon-reload

启动并查看服务状态

sudo systemctl start redis
sudo systemctl status redis

vim 清空日志文件内容 命令模式下 %d

也可以使用 echo “” > 日志文件名

双系统Redis安装保姆级教程

如果能够看到绿色的avtice(running)则表示脚本编写无问题

开机自启动

sudo systemcel enable redis

如果脚本编写无问题, 会出现提示:

Created symlink /etc/systemd/system/multi-user.target.wants/redis.service -> /etc/systemd/system/redis.service.

看到此提示就表示将该服务链接到启动脚本中, 会在系统启动并准备好网络之后启动redis

Windows 平台

一. 软件获取

Redis 并没有直接提供 Windows 平台使用的版本, 可以自己进行源码编译使用.

但是微软也帮我们编译好了redis并且放在Github上, 可以自行取用

Releases · microsoftarchive/redis (github.com)

2021-2-20 已经归档, 不再更新

Release Redis for Windows 5.0.14.1 · tporadowski/redis (github.com)

这里选择 tporadowski 提供的redis版本, 从 release 页面下载zip包

双系统Redis安装保姆级教程

二. 解压并运行

解压缩该包后就可以直接运行 redis-server.exe

双系统Redis安装保姆级教程

为了方便启动redis, 可以将redis的根目录配置到 path 环境变量中, 任意位置都可以启动redis

复制redis根目录

双系统Redis安装保姆级教程

打开系统配置页

双系统Redis安装保姆级教程

找到 path 环境变量

双系统Redis安装保姆级教程

添加redis目录

双系统Redis安装保姆级教程

启动测试

win + r, 打开运行窗口, 输入

# 使用密码123456 启动redis-server
redis-server --requirepass 123456

双系统Redis安装保姆级教程

双系统Redis安装保姆级教程

至此双平台redis安装完成, 感谢收看.
双系统Redis安装保姆级教程

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...