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是不得不的做法.

### Hadoop 和 Redis安装配置教程 #### Hadoop 安装配置 对于Hadoop的安装,环境准备阶段需要确保操作系统已正确设置Java环境变量。通常建议采用Linux发行版作为操作平台。 - **下载并解压Hadoop** 获取稳定版本的Hadoop压缩包后,在目标服务器上将其解压到指定路径下: ```bash tar -zxvf hadoop-x.x.x.tar.gz -C /opt/ ``` 此命令会把文件解压至`/opt/hadoop-x.x.x`目录内[^3]。 - **配置环境变量** 编辑`.bashrc`或其他shell初始化脚本加入如下内容以便全局访问Hadoop命令行工具: ```bash export HADOOP_HOME=/opt/hadoop-x.x.x export PATH=$HADOOP_HOME/bin ``` 完成上述更改之后需重新加载该配置文件使修改生效: ```bash source ~/.bashrc ``` - **调整核心参数** 进入Hadoop根目录下的etc子文件夹中找到`core-site.xml`, `hdfs-site.xml`等XML格式的核心配置文档来设定集群内部通信端口以及其他必要选项[^4]。 #### Redis 安装配置 针对Redis的具体部署流程同样重要,以下是基于给定引用信息整理的操作指导。 - **编译安装Redis** 按照提供的指引执行相应指令完成软件构建过程,并指定了自定义前缀用于存放最终产物: ```bash make install PREFIX=/usr/local/redis0707 ``` 这一步骤将Redis二进制可执行程序安置于`/usr/local/redis0707`位置之下[^1]。 - **启动Redis服务实例** 切换工作区至先前选定的目标地址,通过运行以下命令激活后台守护进程: ```bash cd /usr/local/redis0707 ./bin/redis-server ./redis.conf ``` 这里假设默认配置文件位于当前路径之中;如果实际场景有所不同,则应提供完整绝对路径指向有效配置文件[^2]。 为了实现更深入的功能定制化需求,可以进一步探索官方手册或者其他权威资料源中的高级话题介绍部分。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值