Redis缓存数据库进阶——Linux下安装Redis(1)

一、Redis的技术全景

二、Redis能否取代关系型数据库

Redis 的优势

  1. 高速性能:Redis 是一个基于内存的数据库,因此它提供了极快的读写速度,非常适合处理需要高并发和快速响应的场景,如缓存、消息队列、实时分析等。

  2. 丰富的数据结构:Redis 支持多种数据类型,如字符串(strings)、哈希(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)等,这为开发者提供了更多的灵活性和便利性。

  3. 原子操作:Redis 提供了丰富的原子操作命令,这些命令在单个操作中是原子性的,保证了数据的一致性和并发控制。

  4. 持久化:虽然 Redis 是基于内存的,但它也支持将数据持久化到磁盘上,包括 RDB(Redis Database)和 AOF(Append Only File)两种模式,以防止数据丢失。

关系型数据库的优势

  1. ACID 属性:关系型数据库支持 ACID(原子性、一致性、隔离性、持久性)属性,能够确保数据的一致性和完整性。

  2. 复杂查询:关系型数据库支持 SQL(Structured Query Language),能够执行复杂的查询和聚合操作,非常适合处理结构化数据。

  3. 事务处理:关系型数据库提供了强大的事务处理机制,支持多步骤操作作为一个整体来执行,要么全部成功,要么全部失败。

  4. 数据完整性:通过外键、约束等机制,关系型数据库能够确保数据的完整性和一致性。

Redis 和关系型数据库各有优势,它们之间不是取代关系,而是互补关系。根据具体的应用场景和需求,选择合适的数据库技术来构建高效、可靠的系统。

三、Redis的版本选择与安装

1.首先安装CentOS7、VmWare、FinallShell

CentOS7安装包:

http:// https://pan.baidu.com/s/1UUkN6skDp0gPFb9u7t3b3A?pwd=1234

 

VmWare安装包:
https://pan.baidu.com/s/10nG2ncbB1gH5Wpv1EHTFIg?pwd=1234

FinallShell:

安装详细步骤:

https://blog.csdn.net/qq_45546075/article/details/128037994

2.CentOS上安装wget工具

在Linux系统中,wget 是一个常用的命令行工具,用于从网络上自动下载文件。

如果不缺少wget,可直接执行 wget https://download.redis.io/releases/redis-6.2.7.tar.gz

若Centos7中若缺少wget,执行以下步骤:

配置阿里云的yum仓库镜像源

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

  • curl 是一个命令行工具,用于传输数据。这里它被用来下载文件。
  • -o /etc/yum.repos.d/CentOS-Base.repo 指定了下载文件的保存路径和文件名。这里,它将会把下载的文件保存到 /etc/yum.repos.d/ 目录下,并命名为 CentOS-Base.repo/etc/yum.repos.d/ 是yum仓库配置文件的默认存放目录。
  • https://mirrors.aliyun.com/repo/Centos-7.repo 是要下载的文件的URL地址,这里指向的是阿里云的CentOS 7的yum仓库配置文件。

这个命令的作用是下载阿里云的CentOS 7 yum仓库配置文件,并将其保存到系统的yum仓库配置文件目录中,以便yum可以使用这个新的仓库配置文件来寻找和安装软件包。

②sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo

  • sed 是一个流编辑器,它能够执行文本文件中的文本替换、删除、新增、选取等文本处理操作。
  • -i 选项是对文件进行就地编辑(即直接修改文件内容,而不是输出到标准输出)。
  • -e 选项后面跟着的是sed要执行的编辑命令。这里有两个-e选项,意味着要执行两个编辑命令。
  • '/mirrors.cloud.aliyuncs.com/d' 和 '/mirrors.aliyuncs.com/d' 是两个编辑命令,它们的作用是从文件中删除所有包含指定字符串(这里是mirrors.cloud.aliyuncs.commirrors.aliyuncs.com)的行。
  • /etc/yum.repos.d/CentOS-Base.repo 是要编辑的文件名,即刚刚下载的阿里云CentOS 7的yum仓库配置文件。

这个命令的作用是删除CentOS-Base.repo文件中所有引用mirrors.cloud.aliyuncs.commirrors.aliyuncs.com的行。这可能是因为用户只想使用阿里云的主镜像源(mirrors.aliyun.com),而不希望使用其他子域名(如mirrors.cloud.aliyuncs.com)的镜像源,或者是因为这些子域名在当前的网络环境下访问速度不佳

③使用yum包管理器自动安装wget软件包  yum install wget -y

  • yum:是Yellowdog Updater, Modified的缩写,是RPM包管理器的一个前端工具,用于在Fedora、CentOS、RHEL等Linux发行版上自动安装、更新、删除和管理软件包。

  • install:是yum命令的一个子命令,用于安装软件包。

  • wget:是一个命令行工具,用于从网络上自动下载文件。它支持HTTP、HTTPS和FTP协议,非常适合于自动下载和更新脚本或程序。

  • -y:这个选项是告诉yum命令在执行过程中自动回答“yes”到所有的提示。这意味着,如果安装过程中需要用户确认(比如,确认软件包的大小、是否继续安装等),yum会自动同意,而不需要用户手动输入yes。这在使用脚本或自动化工具时非常有用,因为它可以避免因为等待用户输入而导致的暂停。

3.在Linux上安装Redis

①安装好wget工具后,使用wget下载redis6.2.7

wget https://download.redis.io/releases/redis-6.2.7.tar.gz

②解压到redis-6.2.7目录下

tar xzf redis-6.2.7.tar.gz

  • tar 是Linux和Unix系统中用于打包和解压文件的工具。
  • xzf 参数中,x 代表解压,z 表示使用gzip进行解压缩,f 表示后面跟着的是要处理的文件名。
  • redis-6.2.7.tar.gz 是要解压的文件名。
  • 执行这个命令后,redis-6.2.7.tar.gz 文件会被解压到当前目录下,生成一个名为 redis-6.2.7 的目录,里面包含了Redis的源代码。

③切换到redis-6.2.7目录下

cd redis-6.2.7/

  • cd 是change directory的缩写,用于切换当前工作目录。
  • redis-6.2.7/ 是上一步解压后生成的目录名,执行这个命令后,你的当前工作目录就会切换到这个目录下

④make 

Redis是用C语言编写的,所以需要将源代码编译成机器语言才能运行。

make命令是一个流行的构建工具,它可以根据预先设置的规则自动编译源代码,简化了编译的过程。

make命令的作用就是将Redis源代码编译成可执行文件,使我们能够运行Redis服务器。

make命令的作用是从Makefile中读取指令,‌然后进行编译。‌这一步骤是安装Redis的一部分,‌确保源代码被正确地转换成可以在Linux系统上运行的二进制文件。‌

 make命令报错如下:

解决办法:

yum -y install gcc

使用yum包管理器自动安装GCC编译器,并在安装过程中自动回答所有提示为“yes”


接着运行make命令又报错

解决办法: 

make distclean(编译出错时,清出编译生成的文件)

编译安装到指定目录下

make PREFIX=/usr/local/redis install

进入redis的安装目录

cd /usr/local/redis

ls

cd bin

PS: redis的bin目录下可执行文件

bin目录通常包含用于启动Redis服务器和与Redis服务器进行交互的可执行文件。‌

redis-server是用于启动Redis服务器的可执行文件。

redis-cli是一个命令行工具,‌用于与Redis服务器进行交互。‌

通过这些工具,‌用户可以管理Redis数据库,‌执行各种操作,‌如设置和获取键值对、‌列表操作等

四、启动Redis服务三种方式

启动方式1

./redis-server(不常用)

启动方式2

带参数启动./redis-server --port 6380(修改端口号)


 

启动方式3

配置文件启动

./redis-server /usr/local/redis/redis.conf

执行上述命令前,要先执行以下:

①将当前redis-6.2.7目录下的 redis.conf 文件复制到 /usr/local/redis/ 目录下

 

  • redis.conf 是要复制的源文件名
  • /usr/local/redis/ 是目标目录的路径,即 redis.conf 文件将要被复制到的位置。

②改权限  chmod -R 777 redis.conf

  • chmod 是 "change mode" 的缩写,用于改变文件或目录的权限
  • 777 是一个权限设置,它允许所有用户(文件所有者、所属组的其他成员、系统中的其他所有用户)对文件执行读(r)、写(w)和执行(x)操作。这是一个非常宽松的权限设置,通常不推荐用于配置文件或其他敏感文件,因为它允许任何用户修改文件内容。

③通过配置文件来启动(安装目录下的bin目录才有启动的命令!!!

        cd /usr/local/redis
        ls
        cd bin

       ./redis-server /usr/local/redis/redis.conf

 五、服务启动后,新窗口进入Redis bin目录下执行redis命令 

①cd /usr/local/redis

②ls

③cd bin

④./redis-cli -p 6379 set name leehom
       使用redis-cli工具连接到运行在端口6379的Redis服务器,‌并执行set命令来设置一个键值对。‌具体来说,‌它将键name的值设置为leehom

⑤./redis-cli get name
         这个命令同样使用redis-cli工具连接到Redis服务器,‌并执行get命令来获取之前设置的键值对中的值。‌​​​​​​​

PS:当离开电脑待机时间过久,虚拟机掉线连接成功后,刚刚开启的Redis服务不需要重启

六、停止Redis服务

Redis提供了shutdown命令来停止Redis服务,例如我们目前已经启动的Redis服务,可以执行:

./redis-cli -p 6379 shutdown

以下方式不常用,不推荐!!!

强行终止Redis进程,不会做持久化操作,还会造成缓冲区等资源不能被优雅关闭,极端情况会造成AOF和复制丢失数据的情况。如果是集群,还容易丢失数据。

ps -ef | grep redis 
kill -9 进程ID

  • 17
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值