redisめも

download

Download – Redis

Redisサーバ起動

> redis-server redis.conf

Redisクライアント起動

> redis-cli

Document

redisドキュメント日本語訳 — redis 2.0.3 documentation Redis

Command

クライアント終了

> exit

内容をdumpしてサーバーを終了

> shutdown

データベースの切り替え
(デフォルトでは0が選択されている)

> select 1
ok
redis[1]>

> select 0
ok
redis>

データ保存

# dump.rbdにDump
> save

# バックでsave
> bgsave

データベースのサイズ確認

> dbsize
(integer) 1

データベースのクリア

# 選択しているdbをクリア
> flushdb

# すべてのdbをクリア
> flushall

バックアップ先

dump.rdb

PHPでredis

Predisを使用 nrk/predis · GitHub

接続

require './autoload.php';
Predis\Autoloader::register();
$client = new Predis\Client('tcp://127.0.0.1:6379');

SET GET

$client->set('key', 'value');
$value = $client->get('key');
echo "$value";

> value

Array

$arr = Array(
        'key1' => 'value1',
        'key2' => 'value2',
        'key3' => 'value3'
    );
$client->mset($arr);
$value = $client->mget(array_keys($arr));
var_dump($value);

> array(3) {
    [0]=>
        string(9) "value1"
    [1]=>
        string(9) "value2"
    [2]=>
        string(9) "value3"
}

Set

$client->sadd('testset','a');
$client->sadd('testset','b');
$client->sadd('testset','c');
$value = $client->smembers('testset');
var_dump($value);

> array(3) {
    [0]=>
        string(1) "b"
    [1]=>
        string(1) "a"
    [2]=>
        string(1) "c"
}

Sorted Set

$client->zadd('ranking',100,'user1');
$client->zadd('ranking',200,'user2');
$client->zadd('ranking',150,'user3');
$value = $client->zrank('ranking','user2');
echo "$value";

> 0

Hash

$client->hset('user','name','taro');
$client->hset('user','year','10');
$client->hset('user','sex','male');
$value = $client->hgetall('user');
var_dump($value);

> array(3) {
    ["name"]=>
        string(4) "taro"
    ["year"]=>
        string(2) "10"
    ["sex"]=>
        string(4) "male"
}