Redis在CentOS下的安装部署

基本知识

1、Redis的数据类型:  

字符串、列表(lists)、集合(sets)、有序集合(sorts sets)、哈希表(hashs)

2、Redis和memcache相比的独特之处:

(1)redis可以用来做存储(storge)、而memcache是来做缓存(cache)。这个特点主要是因为其有“持久化”功能

(2)存储的数据有“结构”,对于memcache来说,存储的数据,只有一种类型——“字符串”,而redis则可以存储字符串、链表、集合、有序集合、哈序结构

3、持久化的两种方式:

Redis将数据存储于内存中,或被配置为使用虚拟内存。

实现数据持久化的两种方式:

(1)使用截图的方式,将内存中的数据不断写入磁盘(性能高,但可能会引起一定程度的数据丢失)

(2)使用类似mysql的方式,记录每次更新的日志

4、Redis的主从同步:对提高读取性能非常有益

5、Redis服务端的默认端口是6379

安装Redis

1、先到Redis官网(https://redis.io/)下载redis安装包,网盘同步:链接:https://pan.baidu.com/s/1ZbrtNor5p2nnWAD74CdhKw 提取码:6o8v 

2、准备目录和安装包,并解压进入

在/usr/local/下创建redis目录,并在redis下创建etc目录,如下:

# cd /usr/local/

# mkdir redis

# cd redis/

# mkdir etc

# ls

将安装包用Xftp工具移动至该redis目录下,如下:

解压进入

# tar -zxvf redis-5.0.3.tar.gz

# cd redis-5.0.3/

3、编译源程序与安装

# make 

# cd src

# make install PREFIX=/usr/local/redis

4、将配置文件移动到redis目录

# mv redis.conf /usr/local/redis/etc/

5、修改配置文件(也可用redis-cli修改,此处不再描述)

A. 默认情况,Redis不是在后台运行,需要把redis放在后台运行

# vim /usr/local/redis/etc/redis.conf

将daemonize的值改为yes,如下:

https://img-blog.csdnimg.cn/20181225173336204

B. Redis保护模式是默认开启即本机访问,protected-mode yes修改为关闭no

C. Redis bind默认是127.0.0.1,注释掉或者修改为0.0.0.0 (也可以修改为所在服务器IP,用于监听该网卡,例如:云主机外网123.59.204.160,内网172.10.6.45,则改为172.10.6.45;若为局域网则改为本机IP即可)

D. Redis 设置口令是默认关闭,修改为:requirepass 123456789

6、设置redis开机自启

# vim /etc/systemd/system/redis-server.service

粘贴加入以下内容:

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

[Service]
Type=simple
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
ExecReload=/bin/kill -HUP  $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
KillMode=process
Restart=on-failure
RestartSec=5s
[Install]
WantedBy=multi-user.target

保存退出(:wq)

重新载入

# systemctl daemon-reload

启动服务

# systemctl start redis-server.service

开机启动

# systemctl enable redis-server.service

7、启动redis服务

# /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf

(如下,表示以后台启动)

(如下,表示后台启动配置有误,而控制台启动)

8、停止redis实例

# /usr/local/redis/bin/redis-cli shutdown

或者

# pkill redis-server

9、其他

# ps -ef |grep redis     检查后台进程是否正在运行,如下图表示正在运行:

# netstat -lntp | grep 6379   检测6379端口是否在监听,如下:

# /usr/local/redis/bin/redis-cli  使用`redis-cli`客户端检测连接是否正常,如下正常:

10、防火墙开放端口

# firewall-cmd --zone=public --add-port=6379/tcp --permanent    (--permanent永久生效,没有此参数重启后失效)

重新载入

# firewall-cmd --reload

查看打开的所有端口

# firewall-cmd --zone=public --list-ports

Redis的配置

  • daemonize:如需要在后台运行,把该项的值改为yes
  • pdifile:把pid文件放在/var/run/redis.pid,可以配置到其他地址
  • bind:指定redis只接收来自该IP的请求,如果不设置,那么将处理所有请求,在生产环节中最好设置该项
  • port:监听端口,默认为6379
  • timeout:设置客户端连接时的超时时间,单位为秒
  • loglevel:等级分为4级,debug,revbose,notice和warning。生产环境下一般开启notice
  • logfile:配置log文件地址,默认使用标准输出,即打印在命令行终端的端口上
  • database:设置数据库的个数,默认使用的数据库是0
  • save:设置redis进行数据库镜像的频率
  • rdbcompression:在进行镜像备份时,是否进行压缩
  • dbfilename:镜像备份文件的文件名
  • dir:数据库镜像备份的文件放置的路径
  • slaveof:设置该数据库为其他数据库的从数据库
  • masterauth:当主数据库连接需要密码验证时,在这里设定
  • requirepass:设置客户端连接后进行任何其他指定前需要使用的密码
  • maxclients:限制同时连接的客户端数量
  • maxmemory:设置redis能够使用的最大内存
  • appendonly:开启appendonly模式后,redis会把每一次所接收到的写操作都追加到appendonly.aof文件中,当redis重新启动时,会从该文件恢复出之前的状态
  • appendfsync:设置appendonly.aof文件进行同步的频率
  • vm_enabled:是否开启虚拟内存支持
  • vm_swap_file:设置虚拟内存的交换文件的路径
  • vm_max_momery:设置开启虚拟内存后,redis将使用的最大物理内存的大小,默认为0
  • vm_page_size:设置虚拟内存页的大小
  • vm_pages:设置交换文件的总的page数量
  • vm_max_thrrads:设置vm IO同时使用的线程数量

猜你喜欢

转载自blog.csdn.net/wgc0802402/article/details/85247056