本系列介绍Redis,从安装到使用,太简单的使用不介绍了,介绍一些比较有意思的功能,也会介绍一些原理性的东西。本篇先介绍Redis的单实例安装。Redis还可以做到高可用,通过哨兵和集群可以做到高可用,这两个后面做介绍。

一、准备工作

本系列使用的系统是CentOS 7.5,先查看你的电脑是否安装了gcc,因为安装Redis时是用源码编译安装的,可以使用下面的命令来检查

gcc -v

如果没安装会提示没有命令没找到,可以用yum命令一键安装

yum -y install gcc gcc-c++ kernel-devel

二、下载源码包

用wget命令下载源码包

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

你也可以在下面的网站页面找到你想安装到版本,如果在生产环境还是建议使用稳定版

http://download.redis.io/releases/

比如这里我下载到/usr/local/src目录下,然后进入在这个目录,解压文件

tar -zcvf redis-5.0.8.tar.gz

二、编译安装

解压后进入到redis-5.0.8目录进行编译

make malloc=libc

编译成功后会在redis-5.0.8/src目录下生成一些二进制的文件,这些文件就是可执行的redis相关的文件了。这时候redis会提供叫你执行make test来测试各个功能模块的可用性,你可以测试一下:

make test

如果出来以下的错误

You need tcl 8.5 or newer in order to run the Redis test
make: *** [test] Error 1

说明你的机器上缺少tcl或者版本太低,可以安装或升级tcl

[root@localhost tmp]# wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
[root@localhost tmp]# tar xzvf tcl8.6.1-src.tar.gz -C /usr/local/
[root@localhost tmp]# cd /usr/local/tcl8.6.1/unix/
[root@localhost unix]# ./configure
[root@localhost unix]# make
[root@localhost unix]# make install

安装完成后就可以执行make test

没出问题就可以执行以下命令来启动redis服务:

./src/redis-server

如果你看到以下的启动信息说明成功了

                _._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 5.0.8 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in standalone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 49122
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | http://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'

我们新开一个终端端口,用面的命令来启动redis客户端

./src/redis-cli

然后就可以操作redis了:

[root@localhost src]# ./redis-cli
127.0.0.1:6379> set one 1
OK
127.0.0.1:6379> get one
"1"

我们先按下Ctrl+C终止redis,然后进行安装,这一步是可选的

执行以下命令安装redis到/usr/local/bin目录

cd src		#先进入src目录
make install #把二进制文件安装到/usr/local/bin目录下

这么做的好处是可以在任意目录下执行redis相关的脚本,你也可以把redis安装到指定目录,命令如下:

cd src		#先进入src目录
make PREFIX=/path/to/install install #把二进制文件安装到/path/to/install目录下

三、启动redis服务

假定现在的工作目录是redis的根目录。

  1. 用默认的方式启动
cd src
./redis-server
  1. 可以指定配置文件
cd src
./redis-server /path/conf/redis.conf #指定了配置文件
  1. 在命令中带上配置参数
cd src
./redis-server --port 9999 --replicaof 127.0.0.1 6379
./redis-server /etc/redis/6379.conf --loglevel debug

建议使用方式2

四、配置文件

如果直接启动redis服务,会发现它会一直占用前端,我们可以通过修改配置文件做一些变动,在redis的根目录下有个redis.conf文件,我们先对它备份

cp redis.conf redis.conf.bak

然后编辑redis.conf,里面有一行(136行)daemonize no,我们把no改为yes

daemonize yes

保存退出,然后通过制定配置文件的方式执行redis-server,这时redis已经在后台启动了

[root@localhost redis-5.0.8]# ./src/redis-server redis.conf
30523:C 07 Dec 2019 23:13:59.650 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
30523:C 07 Dec 2019 23:13:59.650 # Redis version=5.0.8, bits=64, commit=00000000, modified=0, pid=30523, just started
30523:C 07 Dec 2019 23:13:59.650 # Configuration loaded
[root@localhost redis-5.0.8]# ps aux | grep redis
root 30524 0.0 0.0 144028 2032 ? Ssl 23:13 0:00 ./src/redis-server 127.0.0.1:6379
root 30537 0.0 0.0 112712 960 pts/0 S+ 23:14 0:00 grep --color=auto redis

redis配置更多参数可以直接阅读配置文件,每个参数的都有详细的注释说明,这里不再一一演示。

五、开机启动

设置开机启动前最好在第二步执行了执行了make install的安装操作,redis已经给用户准备了一个脚本,如下

./utils/install_server.sh

整个过程需要做一些设置,设置好之后会安装服务,最后提示成功

Installing service...
Successfully added to chkconfig!
Successfully added to runlevels 345!
Starting Redis server...
Installation successful!

执行了开机启动脚本会复制一份redis.conf到/etc/redis/6379.conf,而且daemonize的值会自动设置成yes,换一句话说就是开机启动后的redis就是一个运行在后台的服务。

执行完成后我们可以尝试重启机器,查看redis是否自启动

[root@localhost ~]# ps aux | grep redis
root 1175 0.1 0.2 153996 7680 ? Ssl 06:29 0:00 /usr/local/bin/redis-server 127.0.0.1:6379

Redis系列(一):安装的更多相关文章

  1. Redis系列(1)之安装

    Redis系列(1)之安装 由于项目的需要,最近需要研究下Redis.Redis是个很轻量级的NoSql内存数据库,它有多轻量级的呢,用C写的,源码只有3万行,空的数据库只占1M内存.它的功能很丰富, ...

  2. Redis系列(一):Redis的简介与安装

    原文链接(转载请注明出处):Redis系列(一):Redis的简介与安装 什么是 Redis Redis 是一个使用ANSI C 编写的开源.支持网络协议.基于内存.可选持久性的键值对数据库,它是一个 ...

  3. Redis系列一 Redis安装

    Redis系列一    Redis安装 1.安装所使用的操作系统为Ubuntu16.04 Redis版本为3.2.9 软件一般下载存放目录为/opt,以下命令操作目录均为/opt root@ubunt ...

  4. redis系列:redis介绍与安装

    前言 这个redis系列的文章将会记录博主学习redis的过程.基本上现在的互联网公司都会用到redis,所以学习这门技术于你于我都是有帮助的. 博主在写这个系列是用的是目前最新版本4.0.10,虚拟 ...

  5. Redis系列(一):Redis简介及环境安装

    提到Redis,大家肯定都听过,并且应该都在项目中或多或少的使用过,也许你觉得Redis用起来挺简单的呀,但如果有人问你下面的几个问题(比如同事或者面试官),你能回答的上来吗? 什么是Redis? R ...

  6. Java Redis系列2 (redis的安装与使用+redis持久化的实现))

    Java Redis系列2 (redis的安装与使用+redis持久化的实现) 什么是Redis? Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库,官方提供测试数据,50 ...

  7. Redis系列(一)——简介及安装

    摘自:redis中文网(http://www.redis.net.cn/) 参考:http://www.cnblogs.com/hoojo/p/4466024.html,http://keenwon. ...

  8. 组件-------(一)redis系列--安装部署redis+实现redis分布式缓存 java+Spring+redis

    目的:解决单机session不能共享问题,插入查询数据库时间效率问题,实现分布式缓存. 准备材料:Redis 下载链接 http://pan.baidu.com/s/1dEGTxvV 相关jar包如果 ...

  9. Redis系列---安装redis单机版02

    本章将带领大家一步一步安装Redis单机版(Redis从3.0版本后就开始支持集群了,集群将会后边章节带领大家操作) 准备环境: Centos 6.X redis3.+版本(自行下载,redis 的版 ...

随机推荐

  1. Windows中的用户和组以及用户密码处理

    目录 用户帐户 Windows 默认账户 Windows 内置用户账户 查看.创建和删除账户 组账户 内置组账户 组的查看.创建和删除 Windows中对用户密码的处理 LM-hash NTLM-ha ...

  2. Linux提权之利用 /etc/passwd 文件

    当我们获得了某个Linux服务器的低权限之后,我们想要对该低权限账号进行提权,以执行更多的操作. 接下来我们的提权是利用 /etc/passwd 文件的可写入权限,导致我们写入一个其他用户进去. 首先 ...

  3. 3.逆向分析Hello World!程序-下

    5.继续补充,常用操作指令: Ctrl+G    Go to       移动到指定地址,用来查看代码或内存,运行时不可用 F4        Execute till Cursor 执行到光标位置, ...

  4. upload

    File saveDir=new File("D:/Test/UPLOAD"); if(!saveDir.isDirectory()){ saveDir.mkdirs(); } F ...

  5. CAS指令

    原文链接:https://www.jianshu.com/p/00edb3d74a33   CAS是CPU的一条指令,其具有原子性,原子性是由CPU硬件层面保证的.   CAS原语有三个操作数--内存 ...

  6. Redis6.x学习笔记(二)持久化之RDB

    前言 最近学习Redis6.x,特做笔记以备忘,与大家共学.课程是从私塾在线下载的,他们把架构师课程都放出来了,大家可以去下载学习,不要钱的,地址是http://t.hk.uy/eK7,课程很不错,值 ...

  7. 原生JS和jQuery创建元素的方法

    jQ创建元素的方法 1.原生代码 .creatElement('tr')` .innerHTML = '<h1>加油</h1>' document.write('<h1& ...

  8. Swift系列七 - 汇编分析值类型

    通过汇编分下值类型的本质. 一.值类型 值类型赋值给var,let或者给参数传参,是直接将所有内容拷贝一份.类似于对文件进行复制粘贴操作,产生了全新的文件副本,属于深拷贝(deep copy). 示例 ...

  9. [bug] IDEA编译时出现 Information:java: javacTask: 源发行版 1.8 需要目标发行版 1.8

    原因 jdk版本选低了 解决 将以下几处jdk版本修改为1.8 Project Structure(File->Project Structure...)>Sources>Langu ...

  10. x小结:certutil -hashfile D:\1.exe MD5

    在Win7上,MD5不要使用小写,在Win10上没有这个问题 x小结:certutil -hashfile D:\1.exe MD5certutil -hashfile D:\1.exe SHA1ce ...