Redis에서 SSDB로 마이그레이션


Tools

In tools 目录中的 redis-import.php PHP 스크립트를 사용하여 Redis 서버의 데이터를 SSDB 서버에 복사할 수 있습니다. Up.

사용법:

php redis-import.php redis_host redis_port redis_db ssdb_host ssdb_port

매개변수:

    #🎜🎜 #redis_host: Redis가 실행되는 IP 또는 호스트 이름
  • redis_port: Redis 수신 포트
  • redis_db: Redis DB 번호
  • ssdb_host: SSDB IP 또는 호스트 실행 중인 이름
  • ssdb_port: SSDB 수신 포트
PHP Redis 모듈을 확인하세요

https://github.com/nicolasff /phpredis 이미 설치되어 있습니다.

Redis 도구 지원

Tool지원
redis-cli지원
Twemproxy 지원
Sentinel지원되지 않음

SSDB와 Redis 명령 비교표

SSDB는 Redis 프로토콜과 클라이언트를 지원하므로 Redis 클라이언트를 사용하여 SSDB에 연결하여 작업할 수 있습니다.

단, SSDB 클라이언트를 사용하려면 다음 명령 비교표가 필요할 수 있습니다.

Key-Value

keyskeys(kv 유형에만 해당)getsetgetsetsetnxsetnx존재# 🎜 🎜#ttl 만료 getbitgetbit#🎜 🎜 #setbit
RedisSSDB
getget
setset
setex setx(kv 유형에만 해당)
del del
incr/incrByincr
decr/decrBydecr
mget/getMultiplemulti_get
setMultiplemulti_set
del(다중)multi_del#🎜🎜 #
존재
ttl
만료
setbit
bitcountredis_bitcount, countbit
strlenstrlen
getrangegetrange

여기 지침을 주의 깊게 읽어주세요.

  • Redis의 경우 substr 명령(물론 이 작업을 할 수 있지만 하면 안 됩니다)substr 命令早已经被废弃, 所以你不要使用 substr 命令在 Redis 客户端(当然, 你可以这么做, 但你必须不这么做)
  • 如果你还想着 Redis, 那么就用 getrange 命令
  • 注意这两者的区别: substr(start, size)getrange(start, end)
  • 当 size 是负数时, 如果你不熟悉 PHP 语言, 那么你会觉得有些奇怪
  • SSDB 的 substr아직 Redis를 고려 중이라면 getrange Command
  • 둘 사이의 차이점에 유의하세요. substr(시작, 크기), getrange(start, end)#🎜🎜##🎜🎜#크기가 음수인 경우 , PHP 언어에 익숙하지 않다면 조금 낯설게 느껴질 수도 있습니다#🎜🎜##🎜🎜#SSDB의 substr 명령에 대한 설명은 #🎜🎜#here#🎜🎜##🎜🎜#입니다.

키 맵(해시)

RedisSSDB
del(지원되지 않음)hclear
hgethget
hsethset
hdel, hmdelhdel, multi_hdel
hIn crByhincr
hDecrByhdecr
hKeyshkeys
hValshscan
hMGetmulti_hget
hMSetmulti_hset
hLenhsize
hExistshexists
keyshlist(해시 유형에만 해당)

전체 해시를 삭제하려면 SSDB 클라이언트를 사용하여 hclear 명령을 실행해야 합니다. Redis 클라이언트를 사용하여 전체 해시를 삭제할 수 없습니다.#🎜 🎜#

Key-Zset

# 🎜🎜#del(
RedisSSDB
지원되지 않음)zclear
zScorezget
zAddzset
zRemzdel
zRange zrange
zRevRangezrrange
zRangeByScore zscan
zRevRangeByScorezrscan
zIncrByzincr
zDecrByzdecr
zCountzcount
zSumzsum
zAvgzavg
zCardzsize
zRankzrank
zRemRangeByRankzremrangebyrank
zRemRangeByScorezremrangebyscore
zlist(zset 유형에만 해당)

전체 zset를 삭제하려면 SSDB 클라이언트를 사용하여 zclear 명령을 실행해야 합니다. Redis 클라이언트를 사용하여 전체 zset를 삭제할 수 없습니다.

Key-List(Queue)

RedisSSDB
del(지원되지 않음)qclear
llen/lsizeqsize
lpushqpush_front
rpushqpush_back
l 팝qpop_front
rpopqpop_back
lrangeqslice
lindex, lgetqget
lsetqset
keysqlist(큐/목록 유형 전용)

전체 목록을 삭제하려면 SSDB 클라이언트를 사용하여 qclear 명령을 실행해야 합니다. Redis 클라이언트를 사용하여 전체 목록을 삭제할 수 없습니다.