发布于 2016-10-18 12:41:12 | 235 次阅读 | 评论: 0 | 来源: PHPERZ
在 tools 目录中的 redis-import.php PHP 脚本可以用来将 Redis 服务器上的数据, 拷贝到 SSDB 服务器上.
用法:
php redis-import.php redis_host redis_port redis_db ssdb_host ssdb_port
参数:
请确保你的 PHP Redis 模块 https://github.com/nicolasff/phpredis 已经安装.
| Tool | Supported |
|---|---|
| redis-cli | 支持 |
| Twemproxy | 支持 |
| Sentinel | 不支持 |
SSDB 支持 Redis 协议和客户端, 所以你可以使用 Redis 的客户端来连接 SSDB 进行操作.
但是, 如果你想使用 SSDB 的客户端, 你可能需要下面的命令对照表.
| Redis | SSDB |
|---|---|
| get | get |
| set | set |
| setex | setx(for kv type only) |
| del | del |
| incr/incrBy | incr |
| decr/decrBy | decr |
| mget/getMultiple | multi_get |
| setMultiple | multi_set |
| del(multiple) | multi_del |
| keys | keys(for kv type only) |
| getset | getset |
| setnx | setnx |
| exists | exists |
| ttl | ttl |
| expire | expire |
| getbit | getbit |
| setbit | setbit |
| bitcount | redis_bitcount, countbit |
| strlen | strlen |
| getrange | getrange |
请非常细心地阅读此处的说明:
substr 命令早已经被废弃, 所以你不要使用 substr 命令在 Redis 客户端(当然, 你可以这么做, 但你必须不这么做)getrange 命令substr(start, size), getrange(start, end)substr 命令的描述这 这里| Redis | SSDB |
|---|---|
| del(not supported) | hclear |
| hget | hget |
| hset | hset |
| hdel, hmdel | hdel, multi_hdel |
| hIncrBy | hincr |
| hDecrBy | hdecr |
| hKeys | hkeys |
| hVals | hscan |
| hMGet | multi_hget |
| hMSet | multi_hset |
| hLen | hsize |
| hExists | hexists |
| keys | hlist(for hash type only) |
如果你想删除整个 hash, 那么你就必须使用 SSDB 的客户端来执行 hclear 命令, 用 Redis 的客户端是删除不了整个 hash 的.
| Redis | SSDB |
|---|---|
| del(not supported) | zclear |
| zScore | zget |
| zAdd | zset |
| zRem | zdel |
| zRange | zrange |
| zRevRange | zrrange |
| zRangeByScore | zscan |
| zRevRangeByScore | zrscan |
| zIncrBy | zincr |
| zDecrBy | zdecr |
| zCount | zcount |
| zSum | zsum |
| zAvg | zavg |
| zCard | zsize |
| zRank | zrank |
| zRemRangeByRank | zremrangebyrank |
| zRemRangeByScore | zremrangebyscore |
| keys | zlist(for zset type only) |
如果你想删除整个 zset, 那么你就必须使用 SSDB 的客户端来执行 zclear 命令, 用 Redis 的客户端是删除不了整个 zset 的.
| Redis | SSDB |
|---|---|
| del(not supported) | qclear |
| llen/lsize | qsize |
| lpush | qpush_front |
| rpush | qpush_back |
| lpop | qpop_front |
| rpop | qpop_back |
| lrange | qslice |
| lindex, lget | qget |
| lset | qset |
| keys | qlist(for queue/list type only) |
如果你想删除整个 list, 那么你就必须使用 SSDB 的客户端来执行 qclear 命令, 用 Redis 的客户端是删除不了整个 list 的.