Redisの概要とLinuxでのインストール構成(CentOS 6.6_x 64)

3950 ワード

概要
NoSQL
現在のインターネットの3つの問題を解決するために、
  • 1.High performance(高性能);
  • 2.Huge Storage(ビッグデータ量);
  • 3.High Scalability&High Availavbility(高拡張性と高可用性);

  • Redis
    Redisは、キー値データ型をサポートするNOSQLデータベースとしてよく使用されます.
  • 1.文字列(keyで直接取得)
  • 2.ハッシュタイプ(valueに相当するキー値ペアのセット)
  • 3.リストタイプ(List)
  • 4.集合タイプ(Set)
  • 5.順序付き集合タイプ(SortedSet,重み値,わかりやすい)
  • Redisインストール
  • 1.安定バージョンRedis(現在4.0.1)
  • をダウンロード
    [root@zk download]# wget http://download.redis.io/releases/redis-4.0.1.tar.gz
    --2017-08-27 23:49:17--  http://download.redis.io/releases/redis-4.0.1.tar.gz
    Resolving download.redis.io... 109.74.203.151
    Connecting to download.redis.io|109.74.203.151|:80... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 1711660 (1.6M) [application/x-gzip]
    Saving to: “redis-4.0.1.tar.gz”
    
    100%[======================================>] 1,711,660    549K/s   in 3.0s
    
    2017-08-27 23:49:21 (549 KB/s) - “redis-4.0.1.tar.gz” saved [1711660/1711660]
    
  • 2./usr/local
  • に解凍
    
    [root@zk download]# tar -xvf redis-4.0.1.tar.gz -C /usr/local/
    
    [root@zk local]# cd redis-4.0.1/
    
    
  • 3.インストールgcc環境
  • [root@zk redis-4.0.1]# yum install gcc-c++
    Loaded plugins: fastestmirror, security
    ...
    ...
    Total download size: 22 M
    Is this ok [y/N]: y
    Downloading Packages:
    ...
    ...
    warning: rpmts_HdrFromFdno: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
    Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
    Importing GPG key 0xC105B9DE:
     Userid : CentOS-6 Key (CentOS 6 Official Signing Key) 
     Package: centos-release-6-6.el6.centos.12.2.x86_64 (@anaconda-CentOS-201410241409.x86_64/6.6)
     From   : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
    Is this ok [y/N]: y
    ...
    ...
    Complete!
    
    
  • 4.コンパイルRedis
  • ここで直接makeで問題が発生するのは以下の通りです(「Newer version of jemalloc required」)
    [root@zk redis-4.0.1]# make
    cd src && make all
    make[1]: Entering directory `/usr/local/redis-4.0.1/src'
        CC adlist.o
    In file included from adlist.c:34:
    zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directory
    zmalloc.h:55:2: error: #error "Newer version of jemalloc required"
    make[1]: *** [adlist.o] Error 1
    make[1]: Leaving directory `/usr/local/redis-4.0.1/src'
    make: *** [all] Error 2
    
    

    StackOverFlowには、次のような解決策があります.https://stackoverflow.com/questions/37103054/redis-installation-fails-when-running-make-command  実はREADMEにも書いてあり、make MALLOC=libcでも問題を解決できるようです.
    [root@zk redis-4.0.1]# make distclean
    ...
    ...
    [root@zk redis-4.0.1]# make
    
    
  • 5.Redisのインストール、プロファイルのコピー
  • [root@zk redis-4.0.1]# make PREFIX=/usr/local/redis install
    cd src && make install
    make[1]: Entering directory `/usr/local/redis-4.0.1/src'
    
    Hint: It's a good idea to run 'make test' ;)
    
        INSTALL install
        INSTALL install
        INSTALL install
        INSTALL install
        INSTALL install
    make[1]: Leaving directory `/usr/local/redis-4.0.1/src'
    
    [root@zk bin]# cd ../../redis-4.0.1/
    [root@zk redi-4.0.1]# cp redis.conf ../redis/bin/
    [root@zk redis-4.0.1]# cd -
    /usr/local/redis/bin
    
  • 6.プロファイルを変更daemonizeをnoからyes
  • に変更
  • 7.パラメータ付き起動redis(バックエンド起動)
  • 
    [root@zk bin]# ./redis-server redis.conf
    12545:C 28 Aug 02:57:00.871 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
    12545:C 28 Aug 02:57:00.871 # Redis version=4.0.1, bits=64, commit=00000000, modified=0, pid=12545, just started
    12545:C 28 Aug 02:57:00.871 # Configuration loaded
    
  • 8.redisサービスを閉じる方法1:kill-9 pidで直接閉じる1.ps-ef|grep redisクエリpid 2.kill-9 pidメソッド2:直接./redis-cli shutdownは
  • を閉じる
  • 9.オープンポート
  • [root@zk bin]# /sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT
    [root@zk bin]# /etc/rc.d/init.d/iptables save
    iptables: Saving firewall rules to /etc/sysconfig/iptables:[  OK  ]