
Security News
New React Server Components Vulnerabilities: DoS and Source Code Exposure
New DoS and source code exposure bugs in React Server Components and Next.js: what’s affected and how to update safely.
redis-copy
Advanced tools
This utility provides a way to move the contents of one redis DB to another redis DB. It is inspired by the redis-copy.rb script included in the redis source, but aims to always support all object types and to use the most-efficient methods and commands available to your redis versions:
DUMP/RESTORE commands (redis v2.6+)SCAN instead of KEYS (redis v2.8+)$ gem install redis-copy
The current options can be grabbed using the --help flag.
$ redis-copy --help
redis-copy v1.0.0 (with redis-rb 3.0.6)
Usage: redis-copy [options] <source> <destination>
<source> and <destination> must be redis connection uris
like [redis://][<username>:<password>@]<hostname>[:<port>][/<db>]
Specific options:
-p, --pattern PATTERN Only transfer matching keys (default *)
See http://redis.io/commands/keys for more info.
-v, --[no-]verify [PERCENT] Verify percentage of transfers -- VERY SLOW (default 0)
-n, --[no-]allow-nonempty Allow non-empty destination (default false)
-f, --[no-]fail-fast Abort on first failure (default false)
--[no-]pipeline Pipeline redis commands where available (default true)
-r, --require FILENAME Require a script; useful for loading third-party
implementations of key-emitter or copy strategies.
Relative paths *must* begin with `../' or `./'.
-d, --[no-]debug Write debug output (default false)
-t, --[no-]trace Enable backtrace on failure (default false)
--[no-]prompt Prompt for confirmation (default true)
--[no-]dry-run Output configuration and exit
$ redis-copy --no-prompt old.redis.host/9 new.redis.host:6380/3
Source: redis://old.redis.host:6379/9
Destination: redis://new.redis.host:6380/3 (empty)
Key Emitter: Scan
Strategy: DumpRestore
PROGRESS {:success=>1000, :attempt=>1000}
PROGRESS {:success=>2000, :attempt=>2000}
PROGRESS {:success=>3000, :attempt=>3000}
PROGRESS {:success=>4000, :attempt=>4000}
DONE: {:success=>4246, :attempt=>4246}
RedisCopy uses the implements gem to define interfaces for key-emitter
and copy strategies, so implementations can be supplied by third-parties,
secondary gems, or even a local script; the interface shared examples are even
available on your load-path so you can ensure your implementation adheres to
the interface.
See the existing implementations and their specs for examples, and use the
--require command-line flag to load up your own. Since implements treats
last-loaded implementations as inherently better, RedisCopy will automatically
pick up your implementation and attempt to use it before the bundled
implementations.
git checkout -b my-new-feature)git commit -am 'Add some feature')git push origin my-new-feature)FAQs
Unknown package
We found that redis-copy demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
New DoS and source code exposure bugs in React Server Components and Next.js: what’s affected and how to update safely.

Security News
Socket CEO Feross Aboukhadijeh joins Software Engineering Daily to discuss modern software supply chain attacks and rising AI-driven security risks.

Security News
GitHub has revoked npm classic tokens for publishing; maintainers must migrate, but OpenJS warns OIDC trusted publishing still has risky gaps for critical projects.