복붙노트

[REDIS] 방법 레디 스 MySQL에서 데이터를 이동

REDIS

방법 레디 스 MySQL에서 데이터를 이동

내가 MySQL의에서 레디 스 서버에 자주 사용하는 데이터를 배치하려고 시도합니다. 그래서 그냥 읽기 서버로, 나는 레디 스 MySQL에서 데이터를 이동해야 레디 스. 사람은 좋은의 approache을 추천 할 수 있습니까? 내가 어떤 주제를 읽고 어떤 생각 점유율을 가지고 있습니다

MySQL의 트리거 내지 1, 레디 스에 타이밍 앱 데이터 이동을 통해 올바른 데이터를 기록 할 2, 읽기 MySQL의 로그 분석 그것은, 그것은 레디 스에 넣어.

BTW : 레디 스에 저장 내 응용 프로그램 데이터에 실시간으로 필요하지 않습니다, 약간의 대기 시간이 괜찮습니다.

해결법

  1. ==============================

    1.나는 생각 MySQL의 UDF 플러그인 (https://github.com/Ideonella-sakaiensis/lib_mysqludf_redis) 레디 스 MySQL에서 데이터를 동기화하는 데 도움이 될 수 있습니다.

    나는 생각 MySQL의 UDF 플러그인 (https://github.com/Ideonella-sakaiensis/lib_mysqludf_redis) 레디 스 MySQL에서 데이터를 동기화하는 데 도움이 될 수 있습니다.

    예:

    DELIMITER $$
    CREATE TABLE `my_table` (
      id    varchar(16) PRIMARY KEY,
      text  varchar(32)
    );
    

    테이블에 대한 트리거를 설정하고 호출은 MySQL의 UDF에 의해 명령을 레디 스

    DELIMITER $$
    CREATE TRIGGER `after_insert_my_table`
    AFTER INSERT ON `my_table` FOR EACH ROW
    BEGIN
      DO `redis`('redis://@127.0.0.1/0/', 'SET', new.`id`, new.`text`);
    END $$
    DELIMITER ;
    

    당신은 MY_TABLE ID로 값을 얻을 수 있습니다

    mysql>  SELECT `redis`('redis://@127.0.0.1/0/', 'GET', <my_table id>)\G
    *************************** 1. row ***************************
    `redis`('redis://@127.0.0.1/0/', 'GET', <my_table id>): {
            "out":  <my_table text>
    }
    
  2. ==============================

    2.레디 스 - CLI를 사용하는 대량 삽입 모드.

    레디 스 - CLI를 사용하는 대량 삽입 모드.

    http://dcw.ca/blog/2013/01/02/mysql-to-redis-in-one-step/ -이 체크 아웃

  3. from https://stackoverflow.com/questions/10678886/how-to-move-data-from-mysql-to-redis by cc-by-sa and MIT license