내 연락처 정보
우편메소피아@프로톤메일.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
관계형 데이터베이스는 관계형 모델 데이터베이스를 기반으로 생성되고 레코드 중심으로 생성된 구조화된 데이터베이스입니다.
일반적인 관계형 데이터베이스: Oracle, MySQL, SQL Server, Microsoft Access, DB2.
NOSQL=Not Only SQL은 비관계형 데이터베이스의 일반적인 용어입니다. 저장 방법, 저장 구조 및 사용 시나리오에 따라 비관계형 데이터베이스라고 합니다. 주류 관계형 데이터베이스 이외의 데이터베이스를 비관계형 데이터베이스라고 부를 수 있습니다.
일반적인 비관계형 데이터베이스: Redis, MongoDB, Hbase, CouhDB.
Redis는 C 언어로 작성된 오픈 소스 Nosql 데이터베이스로, 메모리 기반으로 실행되며 키-값(키-값 쌍) 저장 형식을 채택합니다. 포트 번호는 6379입니다.
1. 레디스 설치
[root@localhost ~]# systemctl 방화벽 중지
[root@localhost ~]# setenforce 0
[root@localhost ~]# yum -y gcc* zlib-devel을 설치하세요
[루트@로컬호스트 ~]#tar xvzf redis-4.0.9.tar.gz
[루트@로컬호스트 ~]#cd 레디스-4.0.9/
[root@localhost redis-4.0.9]# make
알아채다:
make 후에 오류 메시지가 생성됩니다.
해결책:
해결 방법 1: make MALLOC=libc를 사용하여 libc용으로 컴파일할 메모리 할당자를 지정합니다.
해결 방법 2: make clean && make distclean
[root@localhost redis-4.0.9]# make PREFIX=/usr/local/redis install
[root@localhost 유틸리티]# ln -s /usr/local/redis/bin/* /usr/local/bin/
[root@localhost redis-4.0.9]# cd 유틸리티/
그중에는 install_server.sh가 초기화 스크립트입니다.
[root@localhost 유틸리티]# ./install_server.sh
redis 실행 파일 경로를 선택해주세요 [] /usr/local/redis/bin/redis-server(실행 경로 제공)
프로세스 및 서비스 제어 보기
[root@localhost 유틸리티]# netstat -anpt | grep redis
tcp 0 0 127.0.0.1:6379 0.0.0.0:* 듣기 5360/redis-server 1
[root@localhost 유틸리티]# /etc/init.d/redis_6379 중지(redis가 닫혔습니다)
[root@localhost 유틸리티]# /etc/init.d/redis_6379 시작(에)
[root@localhost 유틸리티]# /etc/init.d/redis_6379 상태 (상태)
구성 매개변수 수정
[root@localhost ~]#vim /etc/redis/6379.conf
바인드 127.0.0.1 192.168.10.101//리스닝 호스트 주소
포트 6379 //포트
데몬화 예 //데몬 프로세스 활성화
pid 파일 /var/run/redis_6379.pid //PID 파일 지정
loglevel 공지//로그 수준
로그파일 /var/log/redis_6379.log//로그 파일 지정
[root@localhost~]#/etc/init.d/redis_6379 재시작
2.redis 명령 도구
[root@localhost 유틸리티]# redis-cli(로컬 로그인)
[root@localhost 유틸리티]# redis-cli -h 192.168.10.101 -p 6379(원격 로그인)
192.168.10.101:6379> 핑(탐지 서비스는 정상적으로 실행되고 있습니다)
퐁
3: redis-벤치마크 테스트 도구
redis-benchmark는 Redis 서비스의 성능을 효과적으로 테스트할 수 있는 공식 Redis 성능 테스트 도구입니다.
(1) 테스트 요청 성능
[root@localhost ~]#redis-벤치마크 -h 192.168.10.101 -p 6379 -c 100 -n 100000
주목:
-h: 서버 호스트 이름을 지정합니다.
-p: 서버 포트를 지정합니다.
-c: 동시 연결 수를 지정합니다.
-n: 요청 수를 지정합니다.
(2) 접속 성능 테스트
[루트@로컬호스트 ~]#redis-벤치마크 -h 192.168.10.101 -p 6379 -q -d 100
주목:
-h: 서버 호스트 이름을 지정합니다.
-p: 서버 포트를 지정합니다.
-d: SET/GET 값의 데이터 크기를 바이트 단위로 지정합니다.
-q: Redis를 강제 종료합니다. 쿼리/초 값만 표시됩니다.
세트는 데이터 명령 형식을 저장합니다. 키 값을 설정합니다.
get 데이터 가져오기 명령 형식 가져오기 키
1. 키-값 쌍 추가
127.0.0.1:6379> 1 1 설정
좋아요
127.0.0.1:6379> 2 2 설정
좋아요
127.0.0.1:6379> 3 3 설정
좋아요
2. 데이터베이스의 모든 값을 봅니다.
127.0.0.1:6379> 키 *
1) "3"
2) "1"
3) "2"
3. 데이터베이스에서 v로 시작하는 데이터 보기
127.0.0.1:6379>키 v*
4. 데이터베이스에서 v로 시작하는 모든 데이터를 봅니다.
127.0.0.1:6379>키 대?
5.현재 데이터베이스 보기 V 시작다음은 두 자리의 데이터를 포함합니다.
127.0.0.1:6379>키 v??
값이 존재하는지 확인합니다.
127.0.0.1:6379>존재 f5f5가 존재하는지 확인
(정수) 1 결과는 1이며, 이는 f5 키가 있음을 나타냅니다.
좋다
(정수) 0 결과는 0입니다. 이는 f5 키가 존재하지 않음을 나타냅니다.
델 이 명령은 지정된 항목을 삭제할 수 있습니다. 열쇠
127.0.0.1:6379> 델 v5 데이터베이스에서 v5 삭제
(정수) 1
127.0.0.1:6379>v5를 받으세요
(무)
사용 유형 명령을 얻을 수 있습니다 열쇠 동 값 값 유형
127.0.0.1:6379>k1형
끈
주목:
Redis가 지원하는 데이터 유형
이름을 바꾸다 이 명령은 기존 열쇠 이름 바꾸기
실제 사용에서는 다음을 사용하는 것이 좋습니다. 존재한다 대상을 보는 명령 열쇠 존재하는지 확인한 후 실행 여부를 결정합니다. 이름을 바꾸다 중요한 데이터를 덮어쓰지 않도록 하는 명령입니다.
127.0.0.1:6379>v22 v2로 이름 변경 v22를 v2로 이름 바꾸기
좋아요
이름 바꾸기 명령의 기능은 기존을 수정하는 것입니다. 열쇠 이름 바꾸기를 수행하고 새 이름이 존재하는지 확인하십시오.
사용이름 바꾸기 명령의 이름이 바뀌면 대상이 열쇠 존재하는 경우 이름이 바뀌지 않습니다.
디비사이즈 명령의 목적은 현재 데이터베이스를 보는 것입니다. 열쇠 수.
127.0.0.1:6379> 디비사이즈
(정수) 5
레디스 변경사항 없이 기본적으로 포함됨 16 데이터베이스, 데이터베이스 이름은 숫자입니다. 0-15 순서대로 이름을 지을 것
(1)일련번호로 전환 10 데이터 베이스
127.0.0.1:6379>10개 선택
좋아요
(2)일련번호로 전환 15 데이터 베이스
127.0.0.1:6379[10]>15를 선택하세요
좋아요
(3)일련번호로 전환 0 데이터 베이스
127.0.0.1:6379[15]>0을 선택하세요
127.0.0.1:6379>세트 k1 100 데이터베이스 0에 k1 생성
좋아요
127.0.0.1:6379>k1을 얻으세요
"100"
127.0.0.1:6379>이동 k1 1 //0번 데이터베이스의 k1을 1번 데이터베이스로 이동
(정수) 1
127.0.0.1:6379>1을 선택하세요 //대상 데이터베이스 1로 전환
좋아요
127.0.0.1:6379[1]>k1을 얻으세요 //이동된 데이터 보기
"100"
127.0.0.1:6379[1]> 0을 선택하세요
좋아요
127.0.0.1:6379> k1을 얻으세요 //k1의 값은 데이터베이스 0에서 볼 수 없습니다.
(무)
현재 데이터베이스 데이터를 지우려면 다음을 사용하십시오. 플러시DB
명령 구현, 모든 데이터베이스 데이터 지우기, 사용 플러샬 명령 구현.
레디스 모든 데이터는 메모리에 저장된 후 때때로 디스크에 비동기적으로 저장됩니다.(이것은 ... 불리운다“반영구적 모드”); 모든 데이터 변경 사항을 파일만 추가(aof)~에(이것은 ... 불리운다“전체 지속성 모드”)。
왜냐하면 레디스 지속성이 구성되지 않은 경우 모든 데이터는 메모리에 저장됩니다.레디스 다시 시작하면 모든 데이터가 손실됩니다.따라서 다음을 활성화해야 합니다.레디스 지속성 기능은 데이터를 디스크에 저장합니다. 레디스 재부팅 후 디스크에서 데이터를 복구할 수 있습니다.레디스 지속성을 위해 두 가지 방법이 제공됩니다. 그 중 하나는 뉴스레터 구독하기(레디스 데이터베이스) 지속성(원칙은 리드메모리 내 데이터베이스 레코드의 시간 초과 덤프(덤프)디스크에 뉴스레터 구독하기 끈기), 다른 하나는 오피오피(추가만 파일)지속성(원칙은 리드 작업 로그는 첨부된 방식으로 파일에 기록됩니다.
RDB와 AOF의 차이점
ROB는 지정된 시간 간격 내에 데이터 스냅샷을 디스크에 기록합니다. 이는 먼저 데이터를 임시 폴더에 기록하고, 이전 파일을 바이너리 압축으로 저장합니다.
AOF는 서버의 모든 쓰기 및 삭제 작업을 로그 형식으로 기록합니다. 쿼리 작업은 기록되지 않지만 텍스트 형식으로 기록됩니다.
RDB 및 AOF의 장점과 단점
RDB 장점:
RDB는 특정 시점의 Redis 데이터 스냅샷을 나타내는 압축된 압축 바이너리 파일입니다. 백업, 전체 복사 및 기타 시나리오에 매우 적합합니다. 예를 들어, 6시간마다 bgsave 백업을 수행하고 재해 복구를 위해 RDB 파일을 원격 시스템이나 파일 시스템에 복사합니다.
데이터 복구가 빠릅니다.
성능 극대화
높은 시동 효율성
뉴스레터 구독하기결점:
종료 전에 저장되지 않은 데이터는 손실됩니다.
RDB는 포크 하위 프로세스를 통해 완료되며 리소스를 소비합니다.
AOF 장점:
데이터 내구성이 높다
추가 모드에서는 다운타임이 발생하더라도 로그 파일의 내용이 삭제되지 않습니다.
데이터 보안을 보호하기 위해 다시 쓰기 메커니즘을 시작할 수 있습니다.
AOF 단점:
AOF 데이터 복구 속도가 느립니다.
AOF 운영 효율이 낮다
둘 중 하나를 선택하는 기준은 다음과 같습니다.
더 높은 캐시 일관성을 위해 일부 성능을 희생합니다(오피오피),
쓰기 작업이 빈번할 경우 성능 향상을 위해 백업을 활성화하지 말고 수동 작업을 기다리십시오. 구하다 언제 다시 백업해두세요(뉴스레터 구독하기)
주목:
다시 시작한 후 Redies가 지속성 파일을 로드해야 하는 경우,우선 사항AOF 파일이 선택됩니다.
RDB를 먼저 활성화한 다음 AOF를 활성화하고 RDB가 먼저 지속되면 RDB 파일의 내용이 AOF로 덮어쓰여집니다.
[root@localhost ~]# vim /etc/redis/6379.conf
열려 있는 6379.conf 파일을 검색한 후 구하다, 아래와 같이 구성 정보를 볼 수 있습니다.
존재하다 레디스 구성 파일에는 세 가지 동기화 방법이 있습니다.
항상: 동기 지속성, 데이터가 변경될 때마다 즉시 디스크에 기록됩니다. ##702 줄
Everysec: 기본적으로 권장, 1초마다 비동기식으로 녹화(기본값)
no: 동기화하지 않습니다. 동기화 방법을 결정하는 것은 운영 체제에 맡깁니다.
문제가 있을 수 있는 마지막 지침을 무시합니다.
[root@localhost ~]#/etc/init.d/redis_6379 재시작
192.168.9.236:7001> 정보 메모리
사용된 메모리:1210776 사용된 메모리 크기(바이트)
사용된_메모리_인간:1.15M단위는 M으로 표시됩니다.
사용된 메모리 RSS:7802880운영 체제의 관점에서 Redis는 얼마나 많은 메모리를 차지합니까?
사용된_메모리_rss_인간:7.44M단위로 표시
최대 메모리:1073741824최대 메모리 크기
최대 메모리_인간:1.00G 단위로 표시
최대 메모리 정책: 재활용 전략
휘발성-lru: 허용한다 레디스 전체 데이터 세트에서 가장 최근에 사용된 데이터를 선택하세요. 열쇠 삭제
휘발성-ttl:키 만료 시간에 따라 제거
휘발성-무작위: 설정된 만료 시간에 따라 데이터 수집에서 제거할 데이터를 무작위로 선택합니다.
올키스-lru:사용 루 알고리즘은 모든 데이터 세트에서 데이터를 제거합니다.
allkeys-무작위: 데이터 수집에서 제거할 데이터를 무작위로 선택합니다.
퇴거 금지: 데이터 제거 비활성화(기본값)
키 만료 시간 설정
127.0.0.1:6379>만료 v1 10 v1의 만료 시간은 10초입니다.
주목:
언제 레디스 메모리 부족으로 인해 하나를 회수해야 함 열쇠 시간,레디스 가장 먼저 고려해야 할 사항은 가장 오래된 데이터가 아닌 최근에 가장 적게 사용된 데이터를 재활용하는 것입니다. 열쇠 또는 만료 예정 열쇠 다음 중 무작위로 하나를 선택하세요. 열쇠, 데이터 세트에서 제거됨