태그 보관물: redis

윈도우에서 Redis 서비스로 설치하기

  1. DownLoad URL
    https://github.com/dmajkic/redis/downloads
  2. 디렉토리 생성
    • 소스위치
      c:\devTools\redis
    • 로그위치
      c:\devTools\redis\log
    • DataBase 위치
      c:\devTools\redis\db
    • 설정파일 위치
      c:\devTools\redis\conf
  3. 설정파일 생성
    • 설정파일 생성(소스파일 폴더에 redis.conf 파일이 존재함)
      c:\devToos\redis\conf\redis.conf
    • BIND 수정(접속할 때 사용할 IP)
      bind 127.0.0.1
    • LOGFILE 위치 설정
      c:\devTools\redis\log\redis.log
    • DIR 위치 설정(DataBase가 생성되는 위치)
      c:\devTools\redis\db\
  4. 윈도우 서비스 실행 등록
    • 실행파일 다운로드
      https://github.com/kcherenkov/redis-windows-service/downloads
    • 서비스 등록
      sc create "REDIS-ST" binpath= "c:\devTools\redis\RedisService_1.1.exe c:\devTools\redis\conf\redis.conf" start= "auto" DisplayName= "REDIS"
    • 서비스 삭제
      sc delete "REDIS-ST"

 

CLIENT 접속

c:\devTools\redis\redis-cli.exe -h ${redis-ip} -p ${redis-port}

 

Cluster

  1. redis 설정파일 생성
    • redis-master.conf
    • redis-slave.conf
  2. redis-master.conf 편집
    • PORT 변경
      7379
    • BIND 변경
      127.0.0.1
    • LOGFILE 이름 변경
      logfile /service/redis/log/redis_master.log
    • DIR 변경(DataBase가 생성되는 위치)
      dir /service/redis/db/
    • DBFILENAME 이름 변경
      dbfilename /service/redis/db/dump_master.rdb
    • SECURITY 섹션에서 requirepass 주석을 풀어주고 비밀번호를 설정
      # requirepass ${password}
  3. redis-slave.conf 편집
    • PORT 변경
      port 8379
    • BIND 변경
      bind 127.0.0.1
    • LOGFILE 이름 변경
      logfile /service/redis/log/redis_master.log
    • DIR 변경(DataBase가 생성되는 위치)
      dir /service/redis/db/
    • DBFILENAME 이름 변경
      dbfilename /service/redis/db/dump_master.rdb
    • SECURITY 섹션에서 requirepass 주석을 풀어주고 비밀번호를 설정
      requirepass ${password}
    • REPLICATION 섹션에서 slaveof 주석을 풀어주고 마스터의 접속정보를 설정
      slaveof ${master-ip} ${master-port}
    • REPLICATION 섹션에서 masterauth 주석을 풀어주고 마스터 접속에 필요한 비밀번호를 설정한다.
      masterauth ${master-password}
    • REPLICATION 섹션에서 repl-ping-slave-period 주석을 풀어주고 마스터와 싱크주기를 설정한다.
      repl-ping-slave-period 10
    • REPLICATION 섹션에서 repl-timeout 주석을 풀어주고 마스터 연결시의 timeout을 설정한다.

      repl-ping-slave-period 보다는 커야된다 

      repl-timeout 60
  4. 윈도우 서비스 실행 등록
    • 마스터 서비스 등록
      sc create "REDIS-MT" binpath= "c:\devTools\redis\RedisService_1.1.exe c:\devTools\redis\conf\redis.conf" start= "auto" DisplayName= "REDIS-MASTER"
    • 마스터 서비스 삭제
      sc delete "REDIS-MT"
    • 슬레이브 서비스 등록
      sc create "REDIS-SL" binpath= "c:\devTools\redis\RedisService_1.1.exe c:\devTools\redis\conf\redis.conf" start= "auto" DisplayName= "REDIS-SLAVE"
    • 슬레이브 서비스 삭제
      sc delete "REDIS-SL"

맥에서 Redis 서버데몬으로 실행하기

  • Plist 생성하기
    • plist 파일 생성
      # sudo vim /Library/LaunchDaemons/io.redis.redis-server.plist
    • 파일 작성
      <?xml version="1.0" encoding="UTF-8"?>
      <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "<a href="http://www.apple.com/DTDs/PropertyList-1.0.dtd" data-mce-href="http://www.apple.com/DTDs/PropertyList-1.0.dtd">http://www.apple.com/DTDs/PropertyList-1.0.dtd</a>">
      <plist version="1.0">
      <dict>
          <key>Label</key>
          <string>io.redis.redis-server</string>
          <key>ProgramArguments</key>
          <array>
              <string>/usr/local/bin/redis-server</string>
              <string>/usr/local/etc/redis.conf</string>
          </array>
          <key>RunAtLoad</key>
          <true/>
      </dict>
      </plist>
  • Homebrew로 설치했을 경우에는 redis.conf의 위치는 /usr/local/etc/redis.conf 이다.
  • launchctl에 등록하기
    • 재부팅할때마다 자동으로 Redis 서버가 실행된다.
      # sudo launchctl load /Library/LaunchDaemons/io.redis.redis-server.plist
    • 재부팅없이 수동을 실행
      # sudo launchctl start io.redis.redis-server
    • 수동으로 정지하기
      # sudo launchctl stop io.redis.redis-server
  • 사용자 .profilealias로 등록하기
    # alias redisstart='sudo launchctl start io.redis.redis-server'
    # alias redisstop='sudo launchctl stop io.redis.redis-server'

참고사이트