麒麟系统—— openKylin 安装 redis
- 一、准备工作
- 1. 确保麒麟系统 openKylin 已经安装完毕。
- 二、下载安装文件
- 三、解压安装
- 解压
- 安装
- 四、配置与运行
- 修改配置文件
- 以配置文件运行
- 五、加入到服务中
- 最终:介绍配置的其他参数使用
Redis是一种开源的、基于内存的高速缓存数据库,适用于需要高性能、高并发处理的场景。本文将分享如何在麒麟系统下的openKylin上安装Redis,并简要说明Redis的基本配置和使用方法
一、准备工作
1. 确保麒麟系统 openKylin 已经安装完毕。
我这里使用的鸿蒙系统是 :openKylin 1.0.1 X86
二、下载安装文件
访问下面网址,安装需要的版本,我这里选择的版本是 redis-5.0.7.tar.gz
http://download.redis.io/releases/
下载完成后拖到目录 /home/redis
如果系统能直接联网,也可以这样下载:
mkdir /home/redis
cd /home/redis
wget http://download.redis.io/releases/redis-5.0.7.tar.gz
-
wget
: 这是一个在命令行中使用的工具,用于从网络上下载文件。它是一个非常常见的下载工具,特别是在Linux和类Unix系统中。 -
http://download.redis.io/releases/redis-5.0.7.tar.gz
: 这是要下载的文件的URL。在这个例子中,它指向了Redis数据库的一个特定版本(5.0.7)的压缩文件(.tar.gz
格式)。http://download.redis.io/releases/
是基础URL,后面跟着具体的文件名。
三、解压安装
解压
sudo tar -zxvf redis-5.0.7.tar.gz
cd redis-5.0.7
-
sudo
: 以超级用户(管理员)权限运行命令。这通常用于执行需要特殊权限的操作,比如安装软件或修改系统文件。 -
tar
: 是一个用于处理归档文件的命令行工具。在这里,它用于解压缩文件。 -
-zxvf
: 这是tar命令的选项集,具体含义如下:-z
: 通过gzip解压缩。-x
: 表示提取文件。-v
: 在屏幕上显示详细信息,以便用户能够看到正在进行的操作。-f
: 后面紧跟着要操作的文件名,这里是 “redis-5.0.7.tar.gz”。
安装
make
sudo make install
-
make
:make
命令是一个构建工具,用于根据源代码中的 Makefile 文件来编译程序。Makefile 包含了一系列指令,告诉系统如何编译和链接源代码,生成可执行文件或库文件。当运行
make
命令时,它会查找当前目录下的 Makefile 文件,并执行其中定义的编译过程。这个过程可能包括编译源代码、链接目标文件,生成最终的可执行文件或库。 -
sudo make install
: 一旦make
编译成功,sudo make install
用于将编译好的程序或库安装到系统中。make install
命令通常会将生成的可执行文件、库文件以及其他必要的资源复制到系统的标准目录,使得可以在系统中全局访问这个软件。
四、配置与运行
修改配置文件
sudo vim /etc/redis.conf
限制 ip 访问
bind 127.0.0.1
port 6379
-
bind 127.0.0.1
:- 这个配置项指定了 Redis 服务器绑定的网络接口地址。在这里,它设置为
127.0.0.1
,表示 Redis 只接受来自本地主机(localhost)的连接。 - 如果希望 Redis 可以从网络上的其他主机访问,可以将这个值改为服务器的公共 IP 地址或
0.0.0.0
,表示监听所有可用的网络接口。
- 这个配置项指定了 Redis 服务器绑定的网络接口地址。在这里,它设置为
-
port 6379
:- 这个配置项指定了 Redis 服务器监听的端口号。在这里,它设置为
6379
,是 Redis 默认的端口号。 - 如果需要使用不同的端口,可以修改这个值。确保选择一个未被占用的端口,并在连接到 Redis 时使用相应的端口号。
- 这个配置项指定了 Redis 服务器监听的端口号。在这里,它设置为
由于我的麒麟系统是用作服务器,所以我这里使用的配置是
bind 0.0.0.0
port 6379
以配置文件运行
redis-server /etc/redis.conf
redis-server
: 这是 Redis 服务器的可执行文件,用于启动 Redis 服务。/etc/redis.conf
: 这是 Redis 的配置文件的路径。配置文件包含了一系列的参数和选项,用于配置 Redis 服务器的行为。在这里,命令指定使用/etc/redis.conf
文件中的配置信息(也就是刚刚输入的绑定IP和端口)。
完美运行!
接下来用工具连接一下
也没有问题
五、加入到服务中
sudo vim /etc/systemd/system/redis.service
[Unit]
Description=Redis Database
After=network.target
[Service]
ExecStart=/usr/local/bin/redis-server /etc/redis.conf
User=root
Restart=always
[Install]
WantedBy=multi-user.target
-
[Unit] 部分:
Description=Redis Database
: 提供了对这个单元的简短描述,说明这是一个 Redis 数据库服务。After=network.target
: 表示该服务应该在网络服务启动后启动。network.target
是一个系统级别的 Systemd 单元,表示网络已经准备好。
-
[Service] 部分:
ExecStart=/usr/local/bin/redis-server /etc/redis.conf
: 指定了启动服务时执行的命令。在这里,它启动了 Redis 服务器,使用了/etc/redis.conf
配置文件。User=root
: 设置服务运行的用户为 root 用户。Restart=always
: 配置在服务退出时自动重启。这有助于确保 Redis 始终在运行状态。
sudo systemctl enable redis
sudo systemctl start redis
这两个命令的组合实现了以下操作:
sudo systemctl enable redis
: 设置 Redis 服务为系统引导时自动启动。sudo systemctl start redis
: 立即启动 Redis 服务。
-
sudo systemctl enable redis
:systemctl
是 Linux 系统中用于控制 systemd 服务的命令。enable
参数告诉 systemd 在系统启动时自动启用redis
服务。这样,Redis 将成为系统引导时自动启动的服务。
-
sudo systemctl start redis
:start
参数告诉 systemd 立即启动redis
服务。这样,Redis 会立即开始运行。
sudo systemctl status redis
sudo
: 以超级用户(管理员)权限运行命令。systemctl
: Linux 中用于管理 systemd 服务的命令。status
: 用于获取服务的当前状态。
执行这个命令后,系统会显示 redis 服务的当前状态信息,包括是否正在运行、运行时的进程 ID、启动时间等。
最终:介绍配置的其他参数使用
Redis 的配置文件 redis.conf
包含了大量的配置参数,每个参数都影响着 Redis 服务器的行为。
配置项 | 描述 |
---|---|
daemonize | 启用后台模式,将 Redis 作为守护进程运行。 |
port | 指定 Redis 服务器监听的端口号。 |
bind | 指定 Redis 服务器绑定的网络接口地址。默认是 127.0.0.1 ,表示只监听本地主机。 |
timeout | 客户端闲置超时时间,单位为秒。如果一个连接在指定时间内没有进行任何操作,连接将被关闭。 |
loglevel | 指定日志记录级别,可以是 debug , verbose , notice , warning 。 |
logfile | 指定日志文件路径。 |
databases | 指定 Redis 实例中数据库的数量。 |
save | 配置持久化快照的条件。可以设置多个条件,每个条件包括时间和修改的键数。 |
rdbcompression | 启用或禁用 RDB 文件的压缩。 |
requirepass | 设置 Redis 连接密码。 |
maxclients | 允许的最大客户端连接数。 |
maxmemory | 设置 Redis 实例的最大内存限制。可以使用不同的策略来处理超过限制的数据,比如 LRU、LFU 等。 |
appendonly | 启用或禁用 AOF(Append Only File)持久化模式。 |
appendfilename | AOF 持久化文件的名称。 |
appendfsync | 配置 AOF 文件的同步策略,可以是 always , everysec , 或 no 。 |
vm-enabled | 启用或禁用虚拟内存。 |
vm-max-memory | 设置虚拟内存使用的最大内存量。 |
vm-page-size | 设置虚拟内存分页的大小。 |
以上只是 Redis 配置文件中的一小部分参数,实际上还有很多其他参数,每个参数都有其特定的作用。要详细了解所有参数及其含义,最好参考 Redis 官方文档
https://redis.io/docs/management/config-file/