Redis がデフォルトで 16 個のデータベースを作成するのはなぜですか?
実際の開発作業では、通常、キャッシュ、分散ロック/メッセージ キューなどに Redis データベースを使用します。しかし、Redis サーバーをセットアップして構成した後、デフォルトで 16 個のデータベースが作成されるのはなぜですか?という疑問がよくあります。
この質問を紹介しましょう。
1. 16 のデータベースの起源
redis は辞書構造のストレージ サーバーです。Redis インスタンスは、データを保存するための複数の辞書を提供します。クライアントデータをどの辞書に保存するかを指定できます。これは、リレーショナル データベース インスタンスで複数のデータベースを作成する方法 (次の図を参照) に似ているため、各辞書を独立したデータベースとして理解できます。
Redis はデフォルトで 16 のデータベースをサポートします。この値は、redis 構成ファイル redis/redis.conf でデータベースを調整することで変更できます。設定が完了したら、redis を再起動します。設定が完了します。
#クライアントが Redis とのリンクを確立すると、データベース No. 0 がデフォルトで選択されますが、select コマンドを使用していつでもデータベースを変更できます。
# 切换数据库操作:切换到1 127.0.0.1:6379> SELECT 1 OK 127.0.0.1:6379[1]> 127.0.0.1:6379[1]> # 切换到0 127.0.0.1:6379[1]> SELECT 0 OK 127.0.0.1:6379> # 从1号库中获取username 127.0.0.1:6379[1]> get username 。
(学習ビデオ共有: redis ビデオ チュートリアル)
実際のプロジェクトでは、次のように Redis 構成ファイルの形式でデータベースを指定できます。以下の図に示されています。 手順
# 2. redis の「データベース」概念を正しく理解します。
redis はカスタム データベース名をサポートしていないため、すべてのデータベースには番号で名前が付けられます。開発者は、保存されたデータとデータベース自体の対応関係を記録する必要があります。さらに、redis はデータベースごとに異なるアクセス パスワードの設定をサポートしていないため、すべてのクライアントがすべてのデータベースにアクセスできるか、すべてのデータベースにアクセスする権限を持っていないかのどちらかです。 Redis の「データベース」概念を正しく理解するには、次のコマンドについて言及する必要があります:
Redis インスタンス内のすべてのデータベースのデータをクリアする
127.0.0.1:6379> FLUSH ALL
Clear the data in a redis インスタンス特定の Redis データベース 他のライブラリのデータは消去されません
127.0.0.1:6379> FLUSH db0
このコマンドは、私たちが使い慣れているリレーショナル データベースとは異なり、インスタンスの下にあるすべてのデータベース データを消去できます。リレーショナル データベースの複数のライブラリは、さまざまなアプリケーションのデータを保存するためによく使用されますが、インスタンス内のすべてのライブラリ データを同時にクリアする方法はありません。 Redis の場合、これらの DB は名前空間に似ており、さまざまなアプリケーションからのデータを保存するのには適していません。たとえば、開発環境ではデータベース 0 にデータを格納し、テスト環境ではデータベース 1 にデータを格納できますが、アプリケーションのデータをデータベース 0 に格納するのは適していません。 A とアプリケーション B のデータを保存するためにデータベース No. 1 を使用します。 異なる環境 データを保存するには、異なる Redis インスタンスを使用する必要があります。 Redis は非常に軽量で、空の Redis インスタンスは約 1M のメモリしか占有しないため、複数の Redis インスタンスが大量の追加メモリを占有することを心配する必要はありません。
3. 1 つのインスタンスはクラスター内の複数の DB をサポートしますか?
上記はすべて単一 Redis の状況に基づいています。クラスターの場合、redis クラスター モードには db0 が 1 つしかないため、select コマンドを使用した db の切り替えはサポートされていません。
推奨学習:redis データベース チュートリアル
以上がRedis がデフォルトで 16 個のデータベースを作成するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Redisクラスターモードは、シャードを介してRedisインスタンスを複数のサーバーに展開し、スケーラビリティと可用性を向上させます。構造の手順は次のとおりです。異なるポートで奇妙なRedisインスタンスを作成します。 3つのセンチネルインスタンスを作成し、Redisインスタンスを監視し、フェールオーバーを監視します。 Sentinel構成ファイルを構成し、Redisインスタンス情報とフェールオーバー設定の監視を追加します。 Redisインスタンス構成ファイルを構成し、クラスターモードを有効にし、クラスター情報ファイルパスを指定します。各Redisインスタンスの情報を含むnodes.confファイルを作成します。クラスターを起動し、CREATEコマンドを実行してクラスターを作成し、レプリカの数を指定します。クラスターにログインしてクラスター情報コマンドを実行して、クラスターステータスを確認します。作る

Redisはハッシュテーブルを使用してデータを保存し、文字列、リスト、ハッシュテーブル、コレクション、注文コレクションなどのデータ構造をサポートします。 Redisは、スナップショット(RDB)を介してデータを維持し、書き込み専用(AOF)メカニズムを追加します。 Redisは、マスタースレーブレプリケーションを使用して、データの可用性を向上させます。 Redisは、シングルスレッドイベントループを使用して接続とコマンドを処理して、データの原子性と一貫性を確保します。 Redisは、キーの有効期限を設定し、怠zyな削除メカニズムを使用して有効期限キーを削除します。

Redisバージョン番号を表示するには、次の3つの方法を使用できます。(1)情報コマンドを入力し、(2) - versionオプションでサーバーを起動し、(3)構成ファイルを表示します。

Redis-Serverが見つからない問題を解決するための手順:インストールを確認して、Redisが正しくインストールされていることを確認します。環境変数Redis_hostとredis_portを設定します。 Redis Server Redis-Serverを起動します。サーバーがRedis-Cli pingを実行しているかどうかを確認します。

Redis Clusterは、Redisインスタンスの水平拡張を可能にする分散展開モデルであり、ノード間通信、ハッシュスロット部門キースペース、ノード選挙、マスター奴隷レプリケーション、コマンドリダイレクトを通じて実装されます。ハッシュスロット:キースペースをハッシュスロットに分割して、キーの責任ノードを決定します。ノード選挙:少なくとも3つのマスターノードが必要であり、選挙メカニズムを通じて1つのアクティブマスターノードのみが保証されます。マスタースレーブレプリケーション:マスターノードはリクエストの書き込みを担当し、スレーブノードはリクエストとデータレプリケーションを読む責任があります。コマンドリダイレクト:クライアントはキーを担当するノードに接続し、ノードは誤ったリクエストをリダイレクトします。トラブルシューティング:障害検出、オフラインのマーク、および再

Redis Orderedセット(ZSET)は、並べ替えられた要素を保存し、関連するスコアでソートするために使用されます。 zsetを使用する手順には次のものがあります。1。zsetを作成します。 2。メンバーを追加します。 3.メンバースコアを取得します。 4。ランキングを取得します。 5.ランキング範囲のメンバーを取得します。 6.メンバーを削除します。 7.要素の数を取得します。 8。スコア範囲のメンバーの数を取得します。

Redisは、キーの一意性を確保するために5つの戦略を使用します。1。名前空間分離。 2。ハッシュデータ構造。 3.データ構造を設定します。 4。文字列キーの特殊文字。 5。LUAスクリプト検証。特定の戦略の選択は、データ組織、パフォーマンス、およびスケーラビリティ要件に依存します。

Redisのすべてのキーを表示するには、3つの方法があります。キーコマンドを使用して、指定されたパターンに一致するすべてのキーを返します。スキャンコマンドを使用してキーを繰り返し、キーのセットを返します。情報コマンドを使用して、キーの総数を取得します。
