2012-11-14 5 views
29

나는 redis를 처음 접했고 다른 redis 데이터베이스를 만들고 변경하는 방법을 알지 못했습니다.redis 데이터베이스간에 어떻게 변경합니까?

어떻게하면됩니까?

+4

[SELECT] (http://redis.io/commands/select) 명령을 참조하십시오. –

+0

세르지오 감사합니다. 어떻게 새 제품을 만들 수 있습니까? – silviomoreto

+1

이미 존재합니다 (기본값으로 16 개 데이터베이스, IIRC) –

답변

46

기본적으로 16 개의 데이터베이스 (0에서 15까지 인덱싱 됨)가 있으며 select 명령을 사용하여 데이터베이스간에 이동할 수 있습니다. 데이터베이스 수는설정으로 redis 구성 파일에서 변경할 수 있습니다.

34

참고 : 이것은 OP의 질문에 대한 직접적인 대답이 아닙니다. 그러나이 텍스트는 설명을하기에는 너무 길어서 어쨌든 OP와 의견을 나누기 위해 공유하고 싶습니다. 여러 데이터베이스에 ... 나는이 작업을 수행하여 너무 많은 SO 규칙을 위반하지 않는

일부 추가 정보를 희망 :

한 레디 스 인스턴스의 여러 데이터베이스를 사용하는 것은 권장하지 않습니다 있습니다.

놀고 알아 듣기 좋은 기능입니다.

더 심각한 설정의 경우 여러 개의 포트를 마음대로 사용할 수있는 경우 별도의 인스턴스를 사용하는 것이 더 바람직합니다. 우리 회사에서는 개발/스테이징 서버에서 약 50 개의 인스턴스를 실행하고 프로덕션 서버에서 약 5 개의 인스턴스를 실행합니다.

이유는 redis 트랜잭션이 어쨌든 하나의 db 번호 내에있는 원자입니다. 대부분 (모든 클라이언트는 아닐지라도) 클라이언트는 connect() 단계에서 여러분을 위해 그것을 분리합니다. 또한 별도로 연결해야하는 경우 다른 포트에 쉽게 연결할 수 있습니다.

redis의 코어도 단일 스레드입니다. 그것은 재빨리 빠르고 쉽게 만드는 것들 중 하나입니다. 모든 것이 순차적입니다. 단 하나가 아닌 여러 인스턴스를 사용하는 경우 멀티 코어 시스템에서 다중 처리의 이점을 얻을 수 있습니다.

+0

그러나 많은 웹 사이트를 실행하는 서버에 redis를 설치 한 경우 캐시에 redis를 사용하려면 한 사이트에 다른 DB를 사용해야합니까? 아니면 한 사이트에 단일 인스턴스 db가 필요합니까? 아니면 모든 사이트에서 DB 0을 간단하게 사용할 수 있습니까? 감사합니다. – Simbus82

관련 문제