Linuxインストール操作redis

6000 ワード

インストールredis
  • 環境準備:yum install gcc-c+,gcc環境
  • アップロード解凍redisインストールパッケージ
  • redisをインストールし、解凍ディレクトリに入り、makeコマンドを入力してインストールします.

  • インストールの注意事項:
  • gcc環境がなければ、
  • のインストールに成功しません.
  • gcc環境がある場合、インストール中にエラーが発生する可能性もあります.zmalloc.h:50:31: :jemalloc/jemalloc.h: のようなエラーは、デフォルトでMALLOCを使用してjemallocの環境のためにredisを確立しているためですが、jemallocはありません.エラーが発生します.Jemallocはlibcがあるのを見ていないので、コンパイルするときにMALLOC=libcを加えると
  • になります
  • make MALLOC=libcはredis/srcディレクトリの下にインストールされ、インストールディレクトリを指定できます.コマンドはmake install PREFIX=/aaa/bbb/redis MALLOC=libc
  • です.
    インストール後に起動
    redisフロントエンド起動:インストール後のbinディレクトリの下に入り、./redis-serverコマンドが起動し、起動するとパンのような図形が表示されます.ただし、Ctrl+cまたはセッションがredisサービスを閉じると閉じます.
    redisバックエンド起動:解凍後のredis.confファイルコピーはbinディレクトリのみで、daemonizeをyesに変更し、起動コマンドを./redis-server redis.confは、ps-ef|grep redisで起動状況を表示できます.
    起動後に閉じる
    強制的に閉じる:kill-9 redisサービスプロセス番号、データ損失を引き起こしやすい
    redis提供コマンドクローズ:./redis-cli shutdown
    redisコマンドラインクライアント
    同様にredisインストール後のbinディレクトリに入り、./redis-cliコマンドはredisコマンドラインクライアントに入り、コマンドを入力してredisの操作を実現します.コマンドは、パラメータ-h、-pを携帯できます.-h:ターゲットサービスのIPに接続します.-p:ターゲットサービスのポートに接続します.パラメータ付きコマンド:./redis-cli -h 127.0.0.1 -p 6379.
    redisグラフィックスインタフェースクライアント
    Windowsにredisのグラフィックスインタフェースクライアントをインストールします.redis-desktop-manager-0.8.0.3841.exeはredisサービスに接続し、仮想マシンがファイアウォール(service iptables stop)を閉じることに注意して、グラフィックスクライアントを使用してコマンドラインを起動し、redisサービス名を右クリックして、Consoleを選択します.コマンドを入力してredisの操作を実現します.
    redisのjavaクライアントjedis
    Jedisのredisに対する操作はjdbcのデータベースに対する操作に似ている.パイロット:commons-poolバージョン.JAr、jedis-バージョン.jar. Jedis接続操作:
    import redis.clients.jedis.Jedis;
    
    public class JedisTest {
    
        public static void main(String[] args) {
            //   jedislianjie
            Jedis jedis = new Jedis("192.168.130.128", 6379);
            //   jedis  redis,   redis  
            jedis.select(1);
            String setResult = jedis.set("name", "zhangsan");
            String getResult = jedis.get("name");
            System.out.println(setResult + ":" + getResult);
            //     
            jedis.close();
        }
    }
    

    Jedisでは、jdbcと同様にjedispoolを使用してredisを操作する破棄リソースを頻繁に作成する問題があります.
    import redis.clients.jedis.Jedis;
    import redis.clients.jedis.JedisPool;
    
    public class JedisPoolTest {
    
        public static void main(String[] args) {
            //   jedispool
            JedisPool jedisPool = new JedisPool("192.168.130.128", 6379);
            //  jedispool   jedis  
            Jedis jedis = jedisPool.getResource();
            // jedis  redis
            jedis.select(1);
            String setResult = jedis.set("age", "18");
            String getResult = jedis.get("age");
            System.out.println(setResult + ":" + getResult);
            jedis.close();
            jedisPool.close();
        }
    }
    

    redisコマンド
    redisはキー値対key/value形式で格納されます.valueのタイプは、文字列(String)、ハッシュ(Hash)、リスト(list)、集合(sets)、秩序化集合(sorted sets、zsets)であってもよい
    文字列タイプ(key,value)
    メモリ値:set key value、正常にOKに戻りました
    値:get key、対応するkeyのvalueを返し、nullが返されていない場合
    valueが整形に変換できる場合、0から:incr countをインクリメントするように設定できます.keyはcountであり,実行ごとにcountに対応するvalueに1を加える.keyは自動作成が存在せず、0に割り当てられ、最初の実行後は1になります.
    valueが整形に変換できる場合、ある値からdecr countを減算するように設定できます.keyはcountであり,実行ごとにcountに対応するvalueは1減少する.keyは自動作成が存在せず、0に割り当てられ、最初の実行後は-1になります.
    valueが整形に変換できる場合は、指定された数値でincrby key 増加するように設定できます.例えばincrby count 4.countは0から始まり、毎回4増加します.
    valueが整形に変換できる場合は、指定値に従ってdecrby key を減算するように設定できます.decrby count 4のように.countは0から始まり、毎回4増加します.
    ハッシュタイプ(key,(field,value))
    保存:hset key field value.hset user name枚3のように、1を正常に返します.値:hget key field.hget user nameのように、対応するname値を返します.nullは複数の値を返していません:hmset key field1 value1 field2 value2.hmset user age 18 address北京のように、OKに戻ることに成功した.複数の値をとります:hmget key field1 field2 field3.hmget user name age addressのように、値が返され、値が返されず、空に戻ります.fieldを含む数:hlen keyを表示します.hlen userがkeyのfield/value:hgetall keyを取得したように.hgetall userがすべてのfield:hkeys keyを取得したように.hkeys userがすべてのvalue:hvals keyを取得したように.hvals userが指定field:hdel key fieldを削除したように.例えばhdel user field
    リスト(key values[value 1,value 2,value 3......])
    List左側の値:lpush key values[value1, value2, value3……].lpush mylist 1 2 3 4のように.リストの数を正常に返しました.List右側メモリ:rpush key values[value1, value2, value3……].rpush mylist 5 6 7 8のように.チェーンテーブル要素の数:llen key.例えばllen mylist.位置要素の指定:lrange key start end.lrange mylist 3 5のように.startは負の数にすることができます.例えば、−1は最後を表し、−2は最後から2番目を表す.startとendはインデックスです.上の格納valuesは4 3 2 1 5 6 8であり、endが最後の数より大きいインデックスは最後の値で計算されます.左の要素:lpop keyがポップアップされます.例えばlpop mylist.右側の要素:rpop keyをポップアップします.ポップアップが表示された場合、valuesリストにはこの要素が含まれていません.
    集合(key values[value 1,value 2,value 3......])
    コレクションのストレージはlistと同様に、set内の要素が重複することができず、setはサービス側で複数のsetsの集約演算を完了することができる.
    追加データ:sadd key values[value1, value2, value3……]、setに既に存在する場合は繰り返し追加しません.追加に成功した要素の数を返します.例えば、sadd myset 1 2 2 3 4はset中の要素:smembers keyを列挙する.例:smembers myset.指定したメンバーの削除:srem key members.srem myset 1 2のように.1つの2つのコレクションの並列セットを正常に返しました:sunion set1 set2.set 1またはset 2の2つの集合に属する交差:sinter set1 set2.set 1に属し、set 2の2つの集合デ差セットに属する:sdiff set1 set2.set 1に属するがset 2に属さない
    ちくじしゅうごう
    コレクションストレージタイプはsetと同様で、順序付きコレクションの各メンバーにはスコアが関連付けられており、redisはスコアによってコレクション内のメンバーをソートできます.
    追加データ:zadd key score member1 score member2…….zadd myzset 1 a 2 b 3 cのように、追加されたデータ数を返します.zsetの要素を列挙:zrange key start end [withscores]:セット内のstart-endとしてコーナーマークされたメンバーを取得します.withscoresは、返された結果にスコアが含まれていることを示します.集合内のメンバーにスコアを追加します:zincrby key score member.例えばzincrby myzset 0.1 a.増加したaのスコアを返します.
    要素の削除:zrem key member[member1,member2……].例えばzrem myzset a b.削除した数を返します.