`
ssxxjjii
  • 浏览: 950460 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Redis 安装及配置 (转整理)

 
阅读更多

Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串,链表,集 合和有序集合。支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能。所以Redis也可以被看成是一个数据结构服务 器。

Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为“半持久化模式”);也可以把每一次数据变化都写入到一个append only file(aof)里面(这称为“全持久化模式”)。

I.快速运行Redis

一、下载安装
进入redis.io官方网站:

Linux代码 复制代码 收藏代码
  1. $ wget http://redis.googlecode.com/files/redis-2.4.15.tar.gz   
  2. $ tar xzf redis-2.4.5.tar.gz //这里假设解压缩到/usr/local/redis   
  3. $ cd redis-2.4.5  
  4. $ make   
  5. $ make install   
  6. $ cd utils   
  7. $./install_server  
$ wget http://redis.googlecode.com/files/redis-2.4.15.tar.gz
$ tar xzf redis-2.4.5.tar.gz //这里假设解压缩到/usr/local/redis
$ cd redis-2.4.5
$ make
$ make install
$ cd utils
$./install_server



就会自动安装到/usr/local/bin目录下。在该目录下生成几个可执行文件,分别是redis-server、redis-cli、redis-benchmark、redis-stat、redis-check-aof,它们的作用如下:
    redis-server:Redis服务器的daemon启动程序
    redis-cli:Redis命令行操作工具。当然,你也可以用telnet根据其纯文本协议来操作
    redis-benchmark:Redis性能测试工具,测试Redis在你的系统及你的配置下的读写性能
    redis-stat:Redis状态检测工具,可以检测Redis当前状态参数及延迟状况
    redis-check-aof:

二.启动服务器
安装时的最后一步install_server脚本会生成启动命令文件(试试就知道),下面就是一个执行例子

Linux代码 复制代码 收藏代码
  1. Welcome to the redis service installer   
  2. This script will help you easily set up a running redis server   
  3.   
  4.   
  5. Please select the redis port for this instance: [6379]   
  6. Selecting default: 6379  
  7. Please select the redis config file name [/etc/redis/6379.conf]   
  8. Selected default - /etc/redis/6379.conf   
  9. Please select the redis log file name [/var/log/redis_6379.log]   
  10. Selected default - /var/log/redis_6379.log   
  11. Please select the data directory for this instance [/var/lib/redis/6379]   
  12. Selected default - /var/lib/redis/6379  
  13. Please select the redis executable path [/usr/local/bin/redis-server]   
  14. Copied /tmp/6379.conf => /etc/init.d/redis_6379   
  15. Installing service...   
  16. Successfully added to chkconfig!   
  17. Successfully added to runlevels 345!   
  18. Starting Redis server...   
  19. Installation successful!  
Welcome to the redis service installer
This script will help you easily set up a running redis server


Please select the redis port for this instance: [6379]
Selecting default: 6379
Please select the redis config file name [/etc/redis/6379.conf]
Selected default - /etc/redis/6379.conf
Please select the redis log file name [/var/log/redis_6379.log]
Selected default - /var/log/redis_6379.log
Please select the data directory for this instance [/var/lib/redis/6379]
Selected default - /var/lib/redis/6379
Please select the redis executable path [/usr/local/bin/redis-server]
Copied /tmp/6379.conf => /etc/init.d/redis_6379
Installing service...
Successfully added to chkconfig!
Successfully added to runlevels 345!
Starting Redis server...
Installation successful!


/etc/init.d/redis_6379 start
将启动服务到默认端口6379

三.客户端访问

Linux代码 复制代码 收藏代码
  1. $ redis-cli   
  2. redis> set foo bar   
  3. OK   
  4. redis> get foo   
  5. "bar"  
$ redis-cli
redis> set foo bar
OK
redis> get foo
"bar"



四.关闭服务器

Linux代码 复制代码 收藏代码
  1. $ /etc/init.d/redis_6379 stop  
$ /etc/init.d/redis_6379 stop


以上摘官方文档http://redis.io/download。如果想使用Windows版的Redis请去http://code.google.com/p/servicestack/wiki/RedisWindowsDownload下载(其版本滞后于官方版本,不建议在生产环境使用Win32.)。

II. 定制服务器启动参数
在我们成功安装Redis后,我们直接执行redis-server即可运行Redis,此时它是按照默认配置来运行的(默认配置甚至不是后台运行)。我们希望Redis按我们的要求运行,则我们需要修改配置文件(在redis解压缩目录下有一个redis.con可以作为范本),下面是redis.conf的主要配置参数的意义:

引用
    daemonize:是否以后台daemon方式运行
pidfile:pid文件位置
port:监听的端口号
timeout:请求超时时间
loglevel:log信息级别
logfile:log文件位置
databases:开启数据库的数量
save * *:保存快照的频率,第一个*表示多长时间,第三个*表示执行多少次写操作。在一定时间内执行一定数量的写操作时,自动保存快照。可设置多个条件。
rdbcompression:是否使用压缩
dbfilename:数据快照文件名(只是文件名,不包括目录)
dir:数据快照的保存目录(这个是目录)
appendonly:是否开启appendonlylog,开启的话每次写操作会记一条log,这会提高数据抗风险能力,但影响效率。
appendfsync:appendonlylog如何同步到磁盘(三个选项,分别是每次写都强制调用fsync、每秒启用一次fsync、不调用fsync等待系统自己同步)



下面是一个略做修改后的配置文件内容:

Redis.conf代码 复制代码 收藏代码
  1. daemonize yes   
  2. pidfile /usr/local/redis/var/redis.pid   
  3. port 6000  
  4. timeout 300  
  5. loglevel debug   
  6. logfile /usr/local/redis/var/redis.log   
  7. databases 16  
  8. save 900 1  
  9. save 300 10  
  10. save 60 10000  
  11. rdbcompression yes   
  12. dbfilename dump.rdb   
  13. dir /usr/local/redis/var/   
  14. appendonly no   
  15. appendfsync always   
  16. glueoutputbuf yes   
  17. shareobjects no   
  18. shareobjectspoolsize 1024  
daemonize yes
pidfile /usr/local/redis/var/redis.pid
port 6000
timeout 300
loglevel debug
logfile /usr/local/redis/var/redis.log
databases 16
save 900 1
save 300 10
save 60 10000
rdbcompression yes
dbfilename dump.rdb
dir /usr/local/redis/var/
appendonly no
appendfsync always
glueoutputbuf yes
shareobjects no
shareobjectspoolsize 1024


重启服务器

Linux代码 复制代码 收藏代码
  1. redis-server /usr/local/redis/redis.conf  
redis-server /usr/local/redis/redis.conf


试试看读写是否有问题.如果服务器启动到了指定非默认端口,那么客户端连接则需要-p参数
如:

Linux代码 复制代码 收藏代码
  1. $redis-cli -p 6380  
$redis-cli -p 6380



* 开放服务器端口供其他主机连接
vi /etc/sysconfig/iptables #需要具备其修改权限
可能需要增加一行:
# redis
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT
保存后重启iptables:
service iptables restart (PATH中加入了/sbin/)或者 /etc/init.d/iptables restart

III. PHP客户端
Redis的php客户端库非常之多,code.google.com上就有:
* phpredis
http://code.google.com/p/phpredis/ 是C客户端作为php模块

* php-predis
http://code.google.com/p/php-redis/ 纯php客户端
以上两个都不在Redis官方推荐推荐之列。

Redis推荐客户端链接是:http://redis.io/clients,如下图:


纯php库Predis(便于hack),但是性能不高。https://github.com/nrk/predis
下载该库文件后运行bin/createSingleFile.php可以生成一个类库文件Predis.php,非常方便使用。下面是最简单的一个Hello World应用:

Php代码 复制代码 收藏代码
  1. <?php   
  2. require('Predis.php');   
  3. $single_server = array(   
  4.     'host'     => '192.168.1.101',   
  5.     'port'     => 6379,   
  6.     'database' => 15   
  7. );   
  8.   
  9. $client = new Predis\Client($single_server);   
  10.   
  11. $client->set('library''predis');   
  12. $retval = $client->get('allen ');   
  13.   
  14. var_dump($retval);  
<?php
require('Predis.php');
$single_server = array(
    'host'     => '192.168.1.101',
    'port'     => 6379,
    'database' => 15
);

$client = new Predis\Client($single_server);

$client->set('library', 'predis');
$retval = $client->get('allen ');

var_dump($retval);



我推荐使用的客户端是:phpredis  https://github.com/nicolasff/phpredis
windows版的dll从这里下载https://github.com/char101/phpredis/downloads

IV . Redis管理工具
1. phpRedisAdmin
https://github.com/ErikDubbelboer/phpRedisAdmin/
要求PHP C Module : https://github.com/nicolasff/phpredis
比较弱

2. redis-admin
http://code.google.com/p/redis-admin/
更弱

选phpRedisAdmin是不得不的做法.

分享到:
评论

相关推荐

    Redis入门&配置教程整理

    Redis入门&配置教程整理

    Redis配置及使用资料整理

    ### Redis配置及使用知识点梳理 #### 一、Redis环境搭建 **1.1 Redis简介** Redis是一个开源的键值(Key-Value)存储系统,它不仅仅可以用作简单的键值数据库,还可以作为数据结构服务器使用,提供了丰富的数据结构...

    redis最全资料及整理文档

    总的来说,“redis最全资料及整理文档”将涵盖从基础安装、配置到高级特性的全面教程,无论你是Windows还是Linux用户,都能找到适用的方法来学习和使用Redis。无论是初学者还是经验丰富的开发者,这个文档都将为你...

    Redis安装整理(window平台和Linux平台)

    本文将详细介绍在Windows和Linux平台上安装Redis的过程,以及如何配置`redis.conf`文件。 ### Windows平台安装Redis 1. **下载安装包**: 访问Redis官方网站(https://redis.io/download)或GitHub仓库,找到适用于...

    redis下载(redis手册+redis.conf文件+windows服务+php_redis扩展+安装方法,绝对好用)

    这个是绝对超值的,本人收集了在windows下架设redis数据库的所需软件,以及在实践中应该注意的...这是本人经过长时间收集整理出来的,里面所有软件都带有安装方法,以及安装使用过程中注意的事项,有需要的就下载吧。

    Redis基础资料,基础整理

    Redis 的配置文件位于 Redis 安装目录下,文件名为 redis.conf(Windows 名为 redis.windows.conf)。可以通过配置文件来设置 Redis 的各种参数,例如数据持久化、备份、网络连接等。 Redis 的应用 Redis 广泛应用...

    redis相关笔记和配置文件示例

    而`Redis - 02.xmind`可能是课程的思维导图,帮助整理Redis的体系结构和相关概念。 总结来说,Redis是一个功能强大的键值存储系统,其配置文件`redis.conf`是理解其运行机制的关键。通过学习和掌握Redis的基础知识...

    redis最全资料整理

    Redis,全称Remote Dictionary Server,是一款高性能的...以上只是Redis众多特性和功能的一部分,实际使用中还需要根据具体需求选择合适的配置和最佳实践。学习和掌握Redis,能极大地提升开发效率和系统的响应速度。

    window下 php5 安装redis 及安装php-redis扩展 (亲测有用)

    phpredis是个人觉得最好的一个php-redis客户端,因为其提供的function与redis的命令基本一致,降低的了学习成本,...1. windows下redis的客户端,可直接安装redis; 2. php5.5 的redis扩展(64位和32位的dll文件);

    Redis实战中文版命令行整理

    - **配置Redis**:Redis安装完成后,需要根据实际需求对配置文件进行设置,比如端口、密码、持久化选项等。 - **操作数据库**:Redis的操作是通过命令行进行的,可以进行数据的增删改查、持久化操作等。 ### Redis...

    redis安装和配置_动力节点Java学院整理

    在Ubuntu系统中,Redis的安装和配置相对简单。下面将详细解释如何在Ubuntu上安装Redis,以及如何进行基本的配置。 首先,安装Redis的步骤如下: 1. 更新系统包列表: `$ sudo apt-get update` 2. 安装Redis服务...

    redis安装包整理

    标题“redis安装包整理”指的是对Redis数据库的安装文件进行归档和整理的过程。Redis是一种高性能的键值存储系统,常用于数据缓存、消息队列等场景。在这个压缩包中,我们至少有一个与PHP相关的文件——`...

    CentOS安装Redis

    编译完成后,将Redis的命令和配置文件进行分类整理,便于后续管理和使用: ```bash mkdir bin conf mv src/* bin/ mv conf/* conf/ ``` 并将`bin`目录加入到环境变量中,以便全局访问Redis命令。 ##### 3.3 设置...

    w3school redis教程 & redis命令参考 飞龙整理 20141114

    在 Windows 上,可以从 GitHub 下载 Redis 并配置环境变量运行 `redis-server.exe` 和 `redis-cli.exe`。在 Linux 上,可以通过源码编译安装,或者使用包管理器(如 apt-get 在 Ubuntu 上)来安装。启动 Redis 服务...

    windows中使用Redis整理vs

    windows中使用Redis 里面包含Redis在页面中的使用说明和dll的代码引用说明

    mqtt+springBoot+redis消息处理,亲测整理上线

    接下来,配置`application.yml`或`application.properties`以连接`MQTT`服务器和`Redis`: ```yaml # MQTT 配置 mqtt: server-url: tcp://mqtt.example.com:1883 client-id: mySpringBootApp username: your_...

    Redis学习资料整理.zip

    个人的学习笔记,五大基本数据类型,相关配置,redis事务,主从同步,集群,持久化,Redis有着更为复杂的数据结构并且提供对他们的原子性操作,这是一个不同于其他数据库的进化路径。Redis的数据类型都是基于基本...

Global site tag (gtag.js) - Google Analytics