欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

redis的简介、安装

程序员文章站 2024-02-02 23:45:04
...

redis的简介、安装 一、背景介绍: redis的全称:remote dictonary server(远程字典服务器) 谁在使用redis: 国内使用redis的有:新浪微博、知乎、街旁,国外的有:GitHub 、* 、Flicker、暴雪和Instagram redis是做什么用的: 高性能键值对数据

redis的简介、安装

一、背景介绍:

redis的全称:remote dictonary server(远程字典服务器)

谁在使用redis:

国内使用redis的有:新浪微博、知乎、街旁,国外的有:GitHub 、* 、Flicker、暴雪和Instagram

redis是做什么用的:

高性能键值对数据库 ,开发语言为:C,可以用作缓存和队列系统

redis支持的键值数据类型:

字符串类型、散列类型、列表类型、集合类型、有序集合类型

内存存储和持久化:

redis支持异步将内存中的数据写到硬盘上,同时不影响继续服务

redis和memcached的区别和联系:

联系:二者均可作为缓存系统

区别:redis是单线程的,memcached是多线程的,故在多核处理器环境下,memcacahed的性能会更高一些,但是由于redis基本上都是在内存中操作,所以这些性能上的差别几乎可以不计,redis在高级数据类型和持久化方面要比memcached好一些

二、安装以及运行

2.1 在posix系统中安装:

redis约定此版本号,次版本号为偶数的为稳定版本(2.4.3),为奇数的是非稳定版本(2.11.1)

源码安装:a、从redis官网下载redis的稳定版源代码(redis-stable.tar.gz)

b、tar xzf redis-stable.tar.gz cd redis-stable

c、make d、make install (将编译生成的可执行文件拷贝到/usr/local/bin下)

e、最好执行 make test 确认安装的正确与否

2.2 redis的启动和停止

编译后生成的可执行文件有:

a、 redis-server redis服务器 b、redis-cli redis 命令行客户端 (command line interface) c、redis-benchmark 性能测试工具

d、redis-check-aof aof文件修复工具 e、redis-check-dump rdb文件检查工具

启动的两种方式:

(1)、直接启动:redis-server --port=8888 # 在8888 端口进行监听,默认的是6379

(2)、通过初始化脚本启动(以ubuntu和debian发行版为例)

在源代码的utils的文件redis_init_script为redis初始化脚本模板

a、将redis_init_script拷贝到/etc/init.d 重命名为redis_8888 ,同时修改该脚本文件中的监听的端口由默认的6379更改为8888

b、建立如下两个文件夹:

/etc/redis 在其中存放配置文件,源文件位于:源代码目录的顶层目录的redis.conf

/var/redis/8888 存放持久化文件

c、修改/etc/redis/redis.conf 为8888.conf,修改其中的一下四项:

daemonize yes 以守护进程的模式运行;pidfile /var/run/redis_8888.pid 设置redis的pid文件的位置

port 8888 ;监听端口 dir /var/redis/8888 持久化文件的存储位置

/etc/init.d/redis_8888 start 启动redis

然后执行使redis随系统的启动而启动sudo update-rc.d redis_8888 defaults

停止redis的方法:

redis-cli -p 8888 shutdown 这和使用kill redis的进程Id是一样的

redis-cli的使用说明:

redis-cli -h 192.168.1.129 -p 8888 redis-server位于192.168.1.129 端口在8888

> ping # 客户端和服务端是否连接正常 返回pong为正常

命令返回值类型:

状态恢复、错误回复、整数回复、字符串回复、多行字符串回复

keys * #显示当前的所有键

redis-server的配置:可以在启动的时候指定配置文件

redis-server /path/redis.conf

redis-server /path/redis.conf --loglevel warn #这是配置文件中的loglevel选项将被命令行中的值替换

使用config set 可以在不重启redis服务的情况下更改 部分 配置,使用config get loglevel获取指定配置项的值

多数据库:

redis-server默认有16个数据库,在redis.conf中配置,在redis-cli中可以使用select来进行切换

使用flushall会将这个redis实例中的所有数据库中的所有数据清空,并且一个redis实例中的所有数据库是同一个密码