http://www.infoq.com/cn/articles/tq-redis-memory-usage-optimization-storage

在Ubuntu下安装reids

redis-2.6.8.tar.gz
root@root01-virtual-machine:/opt# tar -zxvf redis-2.6.8.tar.gz

root@root01-virtual-machine:/opt# ls
redis-2.6.8  redis-2.6.8.tar.gz
root@root01-virtual-machine:/opt# cd redis-2.6.8/
root@root01-virtual-machine:/opt/redis-2.6.8# ls
00-RELEASENOTES  COPYING  Makefile   redis.conf     src
BUGS             deps     MANIFESTO  runtest        tests
CONTRIBUTING     INSTALL  README     sentinel.conf  utils
root@root01-virtual-machine:/opt/redis-2.6.8# make                编译
root@root01-virtual-machine:/opt/redis-2.6.8# sudo make install                  安装

在安装过程中会看到生成文件

mkdir -p /usr/local/bin
    INSTALL install
    INSTALL install
此处学到了一个命令:/* mkdir -p     mkdir的-p选项允许你一次性创建多层次的目录

root@root01-virtual-machine:/opt# mkdir -p /opt/a/b/c

/* root@root01-virtual-machine:/opt# mkdir -p /opt/{a,b}/c     创建的a和b的目录里均含有c

root@root01-virtual-machine:/opt# ls

a  b  redis-2.6.8  redis-2.6.8.tar.gz

root@root01-virtual-machine:/opt/a# ls
c

*/

通过上述mkdir -p生成的目录,安装文件会存在/usr/local/bin目录下

root@root01-virtual-machine:/usr/local/bin# ls
redis-benchmark  redis-check-aof  redis-check-dump  redis-cli  redis-server

    当然上述几个目录在安装目录src里可见

  • redis-server:Redis服务器的daemon启动程序
  • redis-cli:Redis命令行操作工具。当然,你也可以用telnet根据其纯文本协议来操作
  • redis-benchmark:Redis性能测试工具,测试Redis在你的系统及你的配置下的读写性能
  • redis-stat:Redis状态检测工具,可以检测Redis当前状态参数及延迟状况

启动redis的命令之前需要配置redis.conf文件

1.daemonize no    是否以后台进程方式运行  改成yes

2.这两个参数

loglevel warning

logfile/var/log/redis.log

3. c.取消注释

syslog-enabled no #这个改成syslog-enabledyes

syslog-facility local0

d.数据文件目录

# Note that you mustspecify a directory here, not a file name.

dir ./usr/local/ 需设置成相应的目录     例:   dir /var/db/redis

e.内存,连接数设置

maxmemory

maxclients

3.启动

在正式启动redis之前,先创建数据目录

# mkdir /var/db/redis

否则会出现下面的错误

root@root01-virtual-machine:/opt/redis-2.6.8# redis-server /etc/redis.conf
[29058] 12 Jan 10:20:42.413 # Can't chdir to './usr/local/': No such file or directory

把可执行文件放在

cp redis-benchmark redis-cli redis-server /usr/bin/ #这个倒是很有用,这样就不用再执行时加上./了,而且可以在任何地方执行

拷贝文件
cp redis.conf /etc/ 这个文件时redis启动的配置文件

执行完后可通过下边命令查询

root@root01-virtual-machine:/opt/redis-2.6.8/src# ps -ef|grep redis
root      3385  9325  0 11:11 pts/3    00:00:00 grep --color=auto redis
root     21615 15990  0 10:23 pts/4    00:00:00 vi redis.conf

服务端开启后,需要另打开一个客户端进行访问

redis-server conf/redis.conf

注:此命令仅有一个启动参数,指定<REDIS_FILE>目录下的配置文件,不加参数执行默认配置。

root@root01-virtual-machine:/opt/redis-2.6.8/src# redis-cli
Could not connect to Redis at 127.0.0.1:6379: Connection refused
not connected> ping

返回pong

查看端口是否被占用:

root@root01-virtual-machine:/opt/redis-2.6.8/src# netstat -ntlp |grep 6379
tcp        0      0 0.0.0.0:6379            0.0.0.0:*               LISTEN      4621/redis-server

关闭客户端即服务端也会关闭

root@root01-virtual-machine:/opt/redis-2.6.8/src# redis-cli shutdown

如果非默认端口,可指定端口:redis-cli -p 6380 shutdown

关闭redis服务
    redis-cli shutdown 
redis服务关闭后,缓存数据会自动dump到硬盘上,硬盘地址为redis.conf中的配置项dbfilename dump.rdb所设定
强制备份数据到磁盘,使用如下命令
    redis-cli save 或者 redis-cli -p 6380 save(指定端口)

设置开机自动启动,关机自动关闭

root@root01-virtual-machine:/etc/init.d# update-rc.d redis-server defaults
update-rc.d: warning: /etc/init.d/redis-server missing LSB information
update-rc.d: see <http://wiki.debian.org/LSBInitScripts>
 Adding system startup for /etc/init.d/redis-server ...
   /etc/rc0.d/K20redis-server -> ../init.d/redis-server
   /etc/rc1.d/K20redis-server -> ../init.d/redis-server
   /etc/rc6.d/K20redis-server -> ../init.d/redis-server
   /etc/rc2.d/S20redis-server -> ../init.d/redis-server
   /etc/rc3.d/S20redis-server -> ../init.d/redis-server
   /etc/rc4.d/S20redis-server -> ../init.d/redis-server
   /etc/rc5.d/S20redis-server -> ../init.d/redis-server

启动Redis:
/etc/init.d/redis-server start

待完善

3. 初始化用户和日志路径
第一次启动Redis前,建议为Redis单独建立一个用户,并新建data和日志文件夹 sudo useradd redis
sudo mkdir -p /var/lib/redis
sudo mkdir -p /var/log/redis
sudo chown redis.redis /var/lib/redis
sudo chown redis.redis /var/log/redis

redis 2的更多相关文章

  1. 使用redis构建可靠分布式锁

    关于分布式锁的概念,具体实现方式,直接参阅下面两个帖子,这里就不多介绍了. 分布式锁的多种实现方式 分布式锁总结 对于分布式锁的几种实现方式的优劣,这里再列举下 1. 数据库实现方式 优点:易理解 缺 ...

  2. Ignite性能测试以及对redis的对比

    测试方法 为了对Ignite做一个基本了解,做了一个性能测试,测试方法也比较简单主要是针对client模式,因为这种方法和使用redis的方式特别像.测试方法很简单主要是下面几点: 不作参数优化,默认 ...

  3. mac osx 安装redis扩展

    1 php -v查看php版本 2 brew search php|grep redis 搜索对应的redis   ps:如果没有brew 就根据http://brew.sh安装 3 brew ins ...

  4. Redis/HBase/Tair比较

    KV系统对比表 对比维度 Redis Redis Cluster Medis Hbase Tair 访问模式    支持Value大小 理论上不超过1GB(建议不超过1MB) 理论上可配置(默认配置1 ...

  5. Redis数据库

    Redis是k-v型数据库的典范,设计思想及数据结构实现都值得学习. 1.数据类型 value支持五种数据类型:1.字符串(strings)2.字符串列表(lists)3.字符串集合(sets)4.有 ...

  6. redis 学习笔记(2)

    redis-cluster 简介 redis-cluster是一个分布式.容错的redis实现,redis-cluster通过将各个单独的redis实例通过特定的协议连接到一起实现了分布式.集群化的目 ...

  7. redis 学习笔记(1)

    redis持久化 snapshot数据快照(rdb) 这是一种定时将redis内存中的数据写入磁盘文件的一种方案,这样保留这一时刻redis中的数据镜像,用于意外回滚.redis的snapshot的格 ...

  8. python+uwsgi导致redis无法长链接引起性能下降问题记录

    今天在部署python代码到预生产环境时,web站老是出现redis链接未初始化,无法连接到服务的提示,比对了一下开发环境与测试环境代码,完全一致,然后就是查看各种日志,排查了半天也没有查明是什么原因 ...

  9. nginx+iis+redis+Task.MainForm构建分布式架构 之 (redis存储分布式共享的session及共享session运作流程)

    本次要分享的是利用windows+nginx+iis+redis+Task.MainForm组建分布式架构,上一篇分享文章制作是在windows上使用的nginx,一般正式发布的时候是在linux来配 ...

  10. windows+nginx+iis+redis+Task.MainForm构建分布式架构 之 (nginx+iis构建服务集群)

    本次要分享的是利用windows+nginx+iis+redis+Task.MainForm组建分布式架构,由标题就能看出此内容不是一篇分享文章能说完的,所以我打算分几篇分享文章来讲解,一步一步实现分 ...

随机推荐

  1. hdu 1217

    判断通过货币的兑换能否获利,,最短路,这里是乘法,, #include<stdio.h> #include<string.h> double map[31][31],ans[3 ...

  2. android引导页的实现 及跳转到主页面

    第一个activity package com.qualitypicture.activity; import java.util.ArrayList; import java.util.List; ...

  3. Oracle层次查询和with函数的使用

    开发中大家应该都做过什么类似部门管理这样的功能,一般情况下一个部门下面还有下一级部门(子部门),这个层级就类似一棵树.这种情况下一般会把父级部门和子级部门分成2个或者多个表,这种算是比较常规的做法:有 ...

  4. linux apt-get 源配置

    linux中apt-get不能使用可能因为源不对,需要修改/etc/apt下的sources.list文件 apt-get源网上有很多,但是试了很多都不能用,以下提供一个我自己这边使用成功的源: de ...

  5. 链方法[C# 基础知识系列]专题三:如何用委托包装多个方法——委托链

    最近研究链方法,稍微总结一下,以后继续补充: 弁言: 上一专题分析了下编译器是如何来翻译委托的,从中间语言的角度去看委托,希望可以帮助大家进一步的理解委托,然而之前的分析都是委托只是封装一个方法,那委 ...

  6. 前端MVC学习笔记(三)——AngularJS服务、路由、内置API、jQueryLite

    一.服务 AngularJS功能最基本的组件之一是服务(Service).服务为你的应用提供基于任务的功能.服务可以被视为重复使用的执行一个或多个相关任务的代码块. AngularJS服务是单例对象, ...

  7. 疑问:关于postgres的to_number()

    postgres中的to_number(text,number),即是把字符串text转为number的函数,但有时候用的时候经常碰到这样的错误:[Err] ERROR:  invalid input ...

  8. 第11章:DOM扩展

  9. POI插件使用读取office文件

    html文件代码如下: <!doctype html> <html> <head> <meta charset="utf-8"> & ...

  10. quagga源码分析--通用库command

    quagga作为一个路由器软件,自然要提供人机接口. quagga提供snmp管理接口,而且,自然就会有对应的命令行管理格式,当然一般路由软件不会提供界面形式的,也许有webui,然而quagga并没 ...