+ [4. 预编译和安装](#4__74)
+ [5 环境变量配置](#5__99)
+ [6 启动](#6__113)
+ [7.其他相关操作](#7_137)
前言
Redis的安装及最佳实践,本文做了详细的说明
1.Redis介绍
✨ 1.1 概览
REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。
Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。
Redis 通常被称为数据结构服务器,因为值(value)可以是字符串(String)、哈希(Hash)、列表(list)、集合(sets)和有序集合(sorted sets)等类型。
✨ 1.2 特点
Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。
Redis 与其他 key - value 缓存产品有以下三个特点:
1.Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
2.Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
3.Redis支持数据的备份,即master-slave模式的数据备份。
✨ 1.3 优势
1.性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
2.丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
3.Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。
3.丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。
下载地址:redis官网链接,下载最新稳定版本。
2. 安装依赖
[root@jeames ~]# yum install gcc-c++ autoconf automake
注:gcc是Gnu的C语言编译器
##如果不能在线安装,则下载rpm安装即可
rpm -Uvh *.rpm --nodeps --force(忽略关联性、强制安装)
安装完成后查看 /usr/bin/下是否有 gcc 和 g++目录,有的话说明安装成功
离线rpm包链接:https://pan.baidu.com/s/11OeKuO50gvhTWc8SZmgi_Q
提取码:09la
3.上传安装包并解压
#上传tar包到 /opt
sftp> cd /opt
sftp> lcd E:\toolkit\Redis\Linux
sftp> put redis-6.2.5.tar.gz
Uploading redis-6.2.5.tar.gz to /opt/redis-6.2.5.tar.gz
100% 2407KB 2407KB/s 00:00:00
E:\toolkit\Redis\Linux\redis-6.2.5.tar.gz: 2465302 bytes transferred in 0 seconds (2407 KB/s)
[root@jeames ~]# cd /opt
[root@jeames opt]# ll
total 2408
-rw-r--r-- 1 root root 2465302 Jul 22 16:33 redis-6.2.5.tar.gz
#解压tar包
[root@jeames opt]# tar -zxvf redis-6.2.5.tar.gz
4. 预编译和安装
#切换到解压目录
[root@jeames opt]# ll
total 2412
drwxrwxr-x 7 root root 4096 Jul 22 02:06 redis-6.2.5
-rw-r--r-- 1 root root 2465302 Jul 22 16:33 redis-6.2.5.tar.gz
[root@jeames opt]# cd redis-6.2.5
#编译源代码
[root@jeames redis-6.2.5]# make MALLOC=libc
#创建redis的安装目录
[root@jeames ~]# mkdir -p /redis
#如果需要指定安装路径,需要添加PREFIX参数
默认安装路径为 /usr/local/bin
make PREFIX=/redis install
[root@jeames redis-6.2.5]# make PREFIX=/redis install
以下为Redis的默认配置文件
5 环境变量配置
[root@jeames ~]# cd /redis/
[root@jeames redis]# ll
drwxr-xr-x 2 root root 134 Jul 22 17:14 bin
[root@jeames redis]# cd bin
[root@jeames bin]# ll
[root@jeames bin]# vi /etc/profile
export REDIS\_HOME=/redis
export PATH=$REDIS\_HOME/bin:$PATH
[root@jeames bin]# source /etc/profile
6 启动
#启动server
[root@jeames ~]# redis-server
#启动cli
[root@jeames ~]# redis-cli
#修改配置文件路径(从安装包位置复制到安装目录下)
[root@jeames bin]# cp /opt/redis-6.2.5/redis.conf /redis/bin/
关闭redis服务
127.0.0.1:6379[3]> shutdown
重新启动
redis-server /redis/bin/redis.conf
查看Server信息
127.0.0.1:6379> info Server
Server端启动
为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪offer怀里抱!
这次整理的面试题,小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。
本份面试集锦涵盖了
- 174 道运维工程师面试题
- 128道k8s面试题
- 108道shell脚本面试题
- 200道Linux面试题
- 51道docker面试题
- 35道Jenkis面试题
- 78道MongoDB面试题
- 17道ansible面试题
- 60道dubbo面试题
- 53道kafka面试
- 18道mysql面试题
- 40道nginx面试题
- 77道redis面试题
- 28道zookeeper
总计 1000+ 道面试题, 内容 又全含金量又高
- 174道运维工程师面试题
1、什么是运维?
2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?
3、现在给你三百台服务器,你怎么对他们进行管理?
4、简述raid0 raid1raid5二种工作模式的工作原理及特点
5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?
6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?
7、Tomcat和Resin有什么区别,工作中你怎么选择?
8、什么是中间件?什么是jdk?
9、讲述一下Tomcat8005、8009、8080三个端口的含义?
10、什么叫CDN?
11、什么叫网站灰度发布?
12、简述DNS进行域名解析的过程?
13、RabbitMQ是什么东西?
14、讲一下Keepalived的工作原理?
15、讲述一下LVS三种模式的工作过程?
16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
?
8、什么是中间件?什么是jdk?
9、讲述一下Tomcat8005、8009、8080三个端口的含义?
10、什么叫CDN?
11、什么叫网站灰度发布?
12、简述DNS进行域名解析的过程?
13、RabbitMQ是什么东西?
14、讲一下Keepalived的工作原理?
15、讲述一下LVS三种模式的工作过程?
16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
17、如何重置mysql root密码?