MoinMoin Logo
  • Comments
  • Immutable Page
  • Menu
    • Navigation
    • RecentChanges
    • FindPage
    • Local Site Map
    • Help
    • HelpContents
    • HelpOnMoinWikiSyntax
    • Display
    • Attachments
    • Info
    • Raw Text
    • Print View
    • Edit
    • Load
    • Save
  • Login

Navigation

  • Start
  • Sitemap
Revision 22 as of 2023-05-26 11:37:07
  • Redis

Redis

Install Redis 2.6.12 on Slackware64 14

SlackBuild Redis page http://slackbuilds.org/repository/14.0/system/redis/.

Build SlackBuild for Redis 2.6.12:

   1 cd /tmp
   2 wget http://slackbuilds.org/slackbuilds/14.0/system/redis.tar.gz
   3 tar xvzf redis.tar.gz
   4 cd redis
   5 wget http://redis.googlecode.com/files/redis-2.6.12.tar.gz
   6 su
   7 ./redis.SlackBuild
   8 installpkg /tmp/redis-2.6.12-x86_64-1_SBo.tgz

Built package for Slackware64 14: redis-2.6.12-x86_64-1_SBo.tgz

Install Redis 2.6.14 on Slackware 14

SlackBuild Redis page http://slackbuilds.org/repository/14.0/system/redis/.

Build SlackBuild for Redis 2.6.14:

   1 su
   2 cd /tmp
   3 wget http://slackbuilds.org/slackbuilds/14.0/system/redis.tar.gz
   4 tar xvzf redis.tar.gz
   5 cd redis
   6 wget http://redis.googlecode.com/files/redis-2.6.14.tar.gz
   7 ./redis.SlackBuild
   8 installpkg  /tmp/redis-2.6.14-i486-1_SBo.tgz

Built package for Slackware 14: redis-2.6.14-i486-1_SBo.tgz

Start Redis service on Slackware

Run the following commands:

   1 chmod 755 /etc/rc.d/rc.redis # start on boot
   2 /etc/rc.d/rc.redis start

Manual start/stop:

   1 sh /etc/rc.d/rc.redis start
   2 sh /etc/rc.d/rc.redis stop  

It listens in port 6379 and stores it's data on /var/lib/redis/, as configured in /etc/redis.conf.

Tutorial The Little Redis Book

Tutorial in http://openmymind.net/redis.pdf.

Connect to a Redis server

To connect to a Redis server, the redis-cli command may be used.

Usage examples:

  • redis-cli -h <hostname> -p <port> -a <passwd>

  • redis-cli -h 127.0.0.1 -p 6379 -a secretPass

Setting and getting keys

The basic anatomy of a command is:

  • <command> <key> <value>

To show all keys use keys *

To get the type of a key use type keyName

To set a key named unixcommand:bc with the value {command:'bc' , description:'bc - An arbitrary precision calculator language' , syntax:'bc [ -hlwsqv ] [long-options] [ file ... ]'} the command would be:

  • set unixcommand:bc "{command:'bc' , description:'bc - An arbitrary precision calculator language' , syntax:'bc [ -hlwsqv ] [long-options] [ file ... ]'}"

To get the key value the command would be:

  • get unixcommand:bc

Redis hash key

Command prefix H.

Set an hash key with multiple fields with values:

  • hmset <haskey> <field> <value> <field> <value> <field> <value> (...)

  • hmset test:properties prop1 value1 prop2 value2 prop3 value3

Gets field values for an hash key:

  • hget <haskey> <field> <field <field> (...)

  • hget test:properties prop1 prop3

Get all fields and values for an hash key:

  • hgetall <haskey>

  • hgetall test:properties

Get fields for an hash key:

  • hkeys <haskey>

  • hkeys test:properties

Get field for an hash key:

  • hkeys <haskey>

  • hkeys test:properties

Delete field from an hash key:

  • hdel <haskey> field

  • hdel test:properties prop2

Redis list

Command prefix L or R.

Examples:

  • rpush list value
  • rpop list
  • rpush queueA "{'id':1,'task':'add','values':[1,2,3,4,5,6,7,8]}"
  • rpop list value
  • lpush lx "aaaaa"
  • llen lx
  • lindex lx 0
  • lpush lx "bbbbb"
  • lpush lx "ccccc"
  • llen lx
  • lindex lx 0
  • lindex lx 1
  • lindex lx 2
  • lpop lx
  • lpop lx
  • lpop lx
  • lpop lx

Redis sorted set

Command prefix Z. Only allow unique members values on the sorted set. When a existing member is added, the score is updated.

Examples:

  • zadd sortedSetx 123 "{'key':'hello'}" #add member to the sorted set with score 123
  • zcard sortedSetx #number of members in the sorted set sortedSetx
  • zrangebyscore sortedSetx 100 150 # get members where the score is between 100 and 150
  • zrange sortedSetx 0 0 #get the members between 0 and 1 index
  • zrem sortedSetx "{'key':'hello'}" #removes the member in the sorted set

Python client install from pip

   1 su
   2 easy_install pip # if no pip installed
   3 pip install redis

Python client install from source

   1 su
   2 cd /tmp
   3 wget [[https://pypi.python.org/packages/source/r/redis/redis-2.8.0.tar.gz]]
   4 tar xvzf redis-2.8.0.tar.gz 
   5 cd redis-2.8.0
   6 python setup.py build
   7 python setup.py install

   1 python
   2 import redis
   3 r = redis.StrictRedis(host='localhost', port=6379, db=0)
   4 # r = redis.Redis(host='localhost', port=6379, db=0)
   5 r.rpush('queueA','test')
   6 r.rpush('queueA','test2')
   7 r.rpop('queueA')
   8 r.rpop('queueA')
   9 r.rpush('queueA', {'key':1234}  )
  10 x=r.pop('queueA')
  11 #convert string to dictionary
  12 import ast
  13 dictx=ast.literal_eval(x)
  14 dictx
  15 dictx['key']

Install on FreeBSD 10.3

   1 pkg install redis #freebsd
   2 add redis_enable="YES" to /etc/rc.conf
   3 /usr/local/etc/rc.d/redis start
   4 
   5 /usr/local/etc/redis.conf
   6 requirepass 12345678

Install redis in debian

   1 sudo apt install redis
   2 redis-cli
  • MoinMoin Powered
  • Python Powered
  • GPL licensed
  • Valid HTML 4.01