Redisサービス管理
4806 ワード
Redisサーバの管理には、redisが提供するサービスコマンドを使用するか、phpRedisAdmin 1、Redisサーバコマンドは主にredisサービスを管理するための管理ソフトウェアを使用することができます.
二、バックアップとリストア1.redis独自の持続化
Redisは、RDBおよびAOFの2つの永続化オプションを提供する.
デフォルトでは60秒に一度diskにリフレッシュする[save 60 10000 keysデータが1 w変更された場合]Redisのデータセットはdumpという名前で保存される.rdbスナップショットと呼ばれるバイナリファイル.
セーブまたはBGSAVEコマンドを手動で呼び出すこともできます.
./bin/redis-cli -h 192.168.100.205 -p 6379 -a pwd bgsave
スナップショットはリカバリしやすく、ファイルも小さいですが、ダウンタイムなどの場合、スナップショットのデータが不完全になる可能性があります.この場合、[appendonly yes]をコンフィギュレーションファイルで開く別の永続化方法AOFを有効にする必要がある場合があります.
AOFログをdiskにリフレッシュするルール:
appendfsync always#alwaysは、書き込み操作のたびに同期し、非常に遅く、非常に安全であることを示しています.
appendfsync everysec#everysecは、書き込み操作を蓄積し、毎秒1回同期することを示す
公式の提案everysecは、安全です.速度が速くないので、機械に問題があれば1秒のデータを失う可能性があります.
手動でbgrewriteaofを実行してAOFバックアップを行うこともできます.
./bin/redis-cli -h 192.168.100.205 -p 6379 -a pwd bgrewriteaof
マスター(Master)マルチスレーブ(Slave)を用いて読み書き分離のみを行った場合、Masterは書き込みとAOF持続化を担当し、Slaveは読み取りを担当する.毎日Slaveを通じてRDBバックアップを行い[公式に提案されているのは、RDBファイルを1時間ごとにバックアップし、ポリシーとビジネスタイプを見てください]、スクリプトで対応するバックアップファイルをバックアップサーバにプッシュします.
Redisサーバが停止すると、再起動時に次の優先順位でメモリにデータが復元されます.
AOFのみを構成する場合、再起動時にAOFファイルをロードしてデータを復元します.
RBDとAOFが同時に構成されている場合、起動はAOFファイルのみをロードしてデータを復元します.
RBDのみを構成する場合、起動はdumpファイルをロードしてデータを復元します.
リカバリ時に注意してください.メインライブラリが停止している場合は、メインライブラリを直接再起動できません.そうしないと、ライブラリからのAOFファイルが直接上書きされ、リカバリするファイルが正しく起動されることを確認しなければなりません.そうしないと、元のファイルが消去されます.
2.サードパーティ製ツール
redisのバックアップとリストアは、サードパーティのツールredis-dumpを使用することができます.
1)redis-dumpのインストール
yum install ruby rubygems ruby-devel//rubygemsおよび関連パッケージのインストール
gem sources -a http://ruby.taobao.org///ソース、タオバオ入り、外のソースはアクセスできません
gem install redis-dump-V//redis-dumpのインストール
2)redis-dumpエクスポートデータ
#telnet 192.168.100.205 6379//telnetからredis
Trying 192.168.100.205...
Connected to 192.168.100.205.
Escape character is '^]'.
set test 11//値を設定
+OK
get test//取値
$2
11
# redis-dump -u 192.168.100.205:6379 >test.json//データのエクスポート
3)redis-dumpエクスポートデータ
#telnet 192.168.100.205 6379//telnetからredis
Trying 192.168.100.205...
Connected to 192.168.100.205.
Escape character is '^]'.
flushall//すべてのデータを空にしてください
+OK
keys*//空の表示
*0
# < test.json redis-load//データのインポート
# telnet 192.168.100.205 6379
Trying 192.168.100.205...
Connected to 192.168.100.205.
Escape character is '^]'.
keys*//インポート成功
*1
$4
test
三、redis安全
redisのプロファイルでパスワードパラメータを設定すると、クライアントがredisサービスに接続するにはパスワード検証が必要になり、redisサービスをより安全にすることができます.
1.次のコマンドでパスワード検証が設定されているかどうかを確認します.
redis 192.168.100.205:6379> CONFIG get requirepass
1) "requirepass"
2) (nil)
デフォルトではrequirepassパラメータは空です.これは、パスワード検証を必要とせずにredisサービスに接続できることを意味します.
2.次のコマンドでパラメータを変更します.
redis 192.168.100.205:6379> CONFIG set requirepass "admin"
OK
redis 192.168.100.205:6379> CONFIG get requirepass
1) "requirepass"
2) "admin"
パスワードを設定すると、クライアントがredisサービスに接続するにはパスワード検証が必要です.そうしないと、コマンドを実行できません.
3.AUTHコマンド基本構文フォーマット
redis 192.168.100.205:6379> AUTH password
例えば:192.168.100.205:6379>AUTH"admin"
これでパスワードokを検証すると、データベースにアクセスできます.
四、Redis管理ツールのphpRedisAdmin phpRedisAdminは、Redisデータベースを管理するための簡単なWebインタフェースです.複数のサーバを追加することで、Keyやデータを表示、変更、削除したり、データのバックアップやエクスポートを行うことができます.プロジェクトのアドレス:https://github.com/ErikDubbelboer/phpRedisAdminプレゼンテーションのアドレス:http://dubbelboer.com/phpRedisAdmin/
参考記事:
1.MySQLデータのRedisへの移行
1.bgrewriteaof
aof(appendonly file)
2.bgsave
3.client kill [ip:port] [id client-id]
4.client list
5.client getname
6.client pause timeout
7.client setname connection-name
8.cluster slots
9.command
redis
10.command count
redis
11.command getkeys
12.time
13.command info command-name [command-name ...]
redis
14.config get parameter
15.config rewrite
redis redis.conf
16.config set parameter value
redis ,
17.config resetstat
info
18.dbsize
key
19.debug object key
key
20.debug segfault
redis
21.flushall
key
22.flushdb
key
23.info [section]
redis
24.lastsave
redis , unix
25.monitor
redis ,
26.role
27.save
28.shutdown [nosave] [save]
,
29.slaveof host port
(slave server)
30.slowlog subcommand [argument]
redis
31.sync
(replication)
二、バックアップとリストア1.redis独自の持続化
Redisは、RDBおよびAOFの2つの永続化オプションを提供する.
デフォルトでは60秒に一度diskにリフレッシュする[save 60 10000 keysデータが1 w変更された場合]Redisのデータセットはdumpという名前で保存される.rdbスナップショットと呼ばれるバイナリファイル.
セーブまたはBGSAVEコマンドを手動で呼び出すこともできます.
./bin/redis-cli -h 192.168.100.205 -p 6379 -a pwd bgsave
スナップショットはリカバリしやすく、ファイルも小さいですが、ダウンタイムなどの場合、スナップショットのデータが不完全になる可能性があります.この場合、[appendonly yes]をコンフィギュレーションファイルで開く別の永続化方法AOFを有効にする必要がある場合があります.
AOFログをdiskにリフレッシュするルール:
appendfsync always#alwaysは、書き込み操作のたびに同期し、非常に遅く、非常に安全であることを示しています.
appendfsync everysec#everysecは、書き込み操作を蓄積し、毎秒1回同期することを示す
公式の提案everysecは、安全です.速度が速くないので、機械に問題があれば1秒のデータを失う可能性があります.
手動でbgrewriteaofを実行してAOFバックアップを行うこともできます.
./bin/redis-cli -h 192.168.100.205 -p 6379 -a pwd bgrewriteaof
マスター(Master)マルチスレーブ(Slave)を用いて読み書き分離のみを行った場合、Masterは書き込みとAOF持続化を担当し、Slaveは読み取りを担当する.毎日Slaveを通じてRDBバックアップを行い[公式に提案されているのは、RDBファイルを1時間ごとにバックアップし、ポリシーとビジネスタイプを見てください]、スクリプトで対応するバックアップファイルをバックアップサーバにプッシュします.
Redisサーバが停止すると、再起動時に次の優先順位でメモリにデータが復元されます.
AOFのみを構成する場合、再起動時にAOFファイルをロードしてデータを復元します.
RBDとAOFが同時に構成されている場合、起動はAOFファイルのみをロードしてデータを復元します.
RBDのみを構成する場合、起動はdumpファイルをロードしてデータを復元します.
リカバリ時に注意してください.メインライブラリが停止している場合は、メインライブラリを直接再起動できません.そうしないと、ライブラリからのAOFファイルが直接上書きされ、リカバリするファイルが正しく起動されることを確認しなければなりません.そうしないと、元のファイルが消去されます.
2.サードパーティ製ツール
redisのバックアップとリストアは、サードパーティのツールredis-dumpを使用することができます.
1)redis-dumpのインストール
yum install ruby rubygems ruby-devel//rubygemsおよび関連パッケージのインストール
gem sources -a http://ruby.taobao.org///ソース、タオバオ入り、外のソースはアクセスできません
gem install redis-dump-V//redis-dumpのインストール
2)redis-dumpエクスポートデータ
#telnet 192.168.100.205 6379//telnetからredis
Trying 192.168.100.205...
Connected to 192.168.100.205.
Escape character is '^]'.
set test 11//値を設定
+OK
get test//取値
$2
11
# redis-dump -u 192.168.100.205:6379 >test.json//データのエクスポート
3)redis-dumpエクスポートデータ
#telnet 192.168.100.205 6379//telnetからredis
Trying 192.168.100.205...
Connected to 192.168.100.205.
Escape character is '^]'.
flushall//すべてのデータを空にしてください
+OK
keys*//空の表示
*0
# < test.json redis-load//データのインポート
# telnet 192.168.100.205 6379
Trying 192.168.100.205...
Connected to 192.168.100.205.
Escape character is '^]'.
keys*//インポート成功
*1
$4
test
三、redis安全
redisのプロファイルでパスワードパラメータを設定すると、クライアントがredisサービスに接続するにはパスワード検証が必要になり、redisサービスをより安全にすることができます.
1.次のコマンドでパスワード検証が設定されているかどうかを確認します.
redis 192.168.100.205:6379> CONFIG get requirepass
1) "requirepass"
2) (nil)
デフォルトではrequirepassパラメータは空です.これは、パスワード検証を必要とせずにredisサービスに接続できることを意味します.
2.次のコマンドでパラメータを変更します.
redis 192.168.100.205:6379> CONFIG set requirepass "admin"
OK
redis 192.168.100.205:6379> CONFIG get requirepass
1) "requirepass"
2) "admin"
パスワードを設定すると、クライアントがredisサービスに接続するにはパスワード検証が必要です.そうしないと、コマンドを実行できません.
3.AUTHコマンド基本構文フォーマット
redis 192.168.100.205:6379> AUTH password
例えば:192.168.100.205:6379>AUTH"admin"
これでパスワードokを検証すると、データベースにアクセスできます.
四、Redis管理ツールのphpRedisAdmin phpRedisAdminは、Redisデータベースを管理するための簡単なWebインタフェースです.複数のサーバを追加することで、Keyやデータを表示、変更、削除したり、データのバックアップやエクスポートを行うことができます.プロジェクトのアドレス:https://github.com/ErikDubbelboer/phpRedisAdminプレゼンテーションのアドレス:http://dubbelboer.com/phpRedisAdmin/
参考記事:
1.MySQLデータのRedisへの移行