2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Redis (RemoteDictionaryServer, etäsanakirjatyyppi) on C-kielellä kirjoitettu avoimen lähdekoodin NoSQL-tietokanta. Redis toimii muistiin perustuen ja tukee pysyvyyttä. Se ottaa käyttöön avainarvo- (avainarvopari) -tallennusmuodon ja on välttämätön osa nykyistä hajautettua arkkitehtuuria.
NoSQL (NoSQL = Not Only SQL), joka tarkoittaa "ei vain SQL:ää", on yleinen termi ei-relaatiotietokantoille. Mainstream NoSQL-tietokantoja ovat Redis, MongBD, Hbase, CouhDB jne. Yllä olevat ei-relaatiotietokannat ovat täysin erilaisia tallennusmenetelmiinsä, tallennusrakenteiltaan ja käyttöskenaarioiltaan. Joten mielestämme se on kokoelma ei-relaatiotietokantoja, ei yleinen termi, kuten relaatiotietokannat. Toisin sanoen muita tietokantoja kuin valtavirran relaatiotietokantoja voidaan pitää ei-relatiivisina. NOSQL-tietokantaa pidetään seuraavan sukupolven tietokantatuotteena sen ei-relatiivisen, hajautetun, avoimen lähdekoodin ja horisontaalisen laajenemisen etujen vuoksi.
Relaatiotietokanta on strukturoitu tietokanta, joka perustuu relaatiomalliin ja on yleensä tietuesuuntautunut. Se käsittelee tietoja tietokantoissa matemaattisten käsitteiden ja menetelmien, kuten joukkoalgebran, avulla. Relaatiomalli viittaa kaksiulotteiseen taulukkomalliin, joten relaatiotietokanta on tietoorganisaatio, joka koostuu kaksiulotteisista taulukoista ja niiden välisistä suhteista. Reaalimaailmassa erilaisia entiteettejä ja erilaisia entiteettien välisiä suhteita voidaan esittää relaatiomalleilla. SQL-lause (Standard Data Query Language) on relaatiotietokantaan perustuva kieli, jota käytetään tietojen hakemiseen ja käyttämiseen relaatiotietokannassa.
Web2.0-verkkosivustojen nousun myötä relaatiotietokannat tulevat näkyviin, kun käsitellään Web2.0-sivustoja, erityisesti Web2.0:n puhtaasti dynaamisia verkkosivustoja, joissa on paljon dataa ja korkean samanaikaisuuden SNS (Social Networking Services, eli sosiaaliset verkkopalvelut). joita on vaikea ratkaista, kuten kolmen korkean ongelman.
Web2.0-sivustot luovat dynaamisia sivuja ja tarjoavat dynaamista tietoa reaaliajassa käyttäjän henkilökohtaisten tietojen perusteella, joten dynaamista sivustaattista tekniikkaa ei voida käyttää. Siksi tietokannan samanaikainen kuormitus on erittäin korkea, yleensä yli 10 000 luku- ja kirjoituspyyntöä sekunnissa. Relaatiotietokanta pystyy vielä tuskin tukemaan kymmeniä tuhansia kyselypyyntöjä, mutta jos tiedonkirjoituspyyntöjä on kymmeniä tuhansia, kiintolevy I0 ei enää kestä sitä. Tavallisilla BBS-sivustoilla on usein suuria samanaikaisia tiedonkirjoituspyyntöjä.
SNS-sivustot, kuten Facebook ja Friendfeed, tuottavat suuren määrän käyttäjädynaamisia tietoja päivittäin. Esimerkiksi Friendfeed tuottaa vähintään 250 miljoonaa käyttäjän dynaamista tietoa kuukaudessa. Relaatiotietokantojen kyselyn tehokkuus on erittäin alhainen suoritettaessa SQL-kyselyjä 250 miljoonaa tietuetta sisältävässä taulukossa.
Web-arkkitehtuurissa tietokanta on vaikein skaalata vaakasuunnassa. Kun käyttäjien ja käyntien määrä sovellusjärjestelmässä kasvaa päivä päivältä, tietokanta ei voi yksinkertaisesti laajentaa suorituskykyään ja latauskapasiteettiaan lisäämällä laitteisto- ja palvelinsolmuja, kuten Web-palveluita. Erityisesti joillakin verkkosivustoilla, joiden on tarjottava palveluita 24 tuntia vuorokaudessa, tietokannan päivityksiin ja laajennuksiin liittyy usein seisokkeja ylläpitoon ja tietojen siirtoon, ja työtaakka on erittäin suuri.
Relaatiotietokannoilla ja ei-relaatiotietokannoilla on omat ominaisuutensa ja sovellusskenaarionsa. Näiden kahden tiivis yhdistelmä tuo uusia ideoita Web2.0-tietokantojen kehittämiseen. Anna relaatiotietokantojen keskittyä suhteisiin ja ei-relaatiotietokantojen keskittyä tallennustilaan. Esimerkiksi MySQL-tietokantaympäristössä, jossa lukeminen ja kirjoittaminen on erotettu toisistaan, usein käytettävät tiedot voidaan tallentaa ei-relaatiotietokantaan pääsynopeuden parantamiseksi.
Sillä on erittäin korkeat tiedon luku- ja kirjoitusnopeudet. Tietojen lukunopeus voi olla jopa 110 000 kertaa sekunnissa ja tietojen kirjoitusnopeus jopa 81 000 kertaa sekunnissa.
Tukee monipuolisia tietotyyppejä, ei vain tue yksinkertaisia avainarvotyyppisiä tietoja, vaan tukee myös tietotyyppitoimintoja, kuten merkkijonoja, luetteloita, tiivisteitä, joukkoja ja järjestettyjä sarjoja.
Tukee tietojen pysyvyyttä Muistissa olevat tiedot voidaan tallentaa levylle ja ladata uudelleen käytettäväksi uudelleenkäynnistyksen yhteydessä.
Atomic, kaikki Redis-operaatiot ovat atomisia.
Tukee tietojen varmuuskopiointia, eli tietojen varmuuskopiointia master-salve-tilassa.
Redis on muistipohjainen tietokanta, ja välimuisti on yksi sen yleisimmistä sovellusskenaarioista. Lisäksi Rediksen yleiset sovellusskenaariot sisältävät myös toiminnot uusimpien N-tietojen hankkimiseksi, sovellusten luokittelua, laskurisovelluksia, tallennussuhteita, reaaliaikaisia analyysijärjestelmiä ja kirjaamista.
[root@localhost ~]# systemctl stop firewalld //Kokeellisessa ympäristössä palomuurin sammuttaminen ei vaikuta tuotantoympäristössä. Yritä lisätä palomuurikäytäntö.
[root@localhost ~]# setenforce 0 //Poista ydin, joka estää sovelluksen toiminnan.
[root@localhost ~]# yum -y install gcc* zlib-devel //Lataa tar-paketin purkamiseen tarvittavat työkalut
[root@localhost ~]#tar xvzf redis-4.0.9.tar.gz //redis on avoimen lähdekoodin ilmainen sovellus. Voit ladata tämän paketin viralliselta verkkosivustolta
[root@localhost ~]#cd redis-4.0.9/
[root@localhost redis-4.0.9]# merkki
Ilmoitus:
Kun teet, seuraava virheilmoitus saattaa ilmestyä:
Ratkaisu 1: Käytätee MALLOC=libc määrittää muistin varaajan libc:llekoota
Ratkaisu 2: tee puhdas && 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 /root/redis-4.0.9/utils/
[root@localhost utils]# ./install_server.sh
Huomautus:
Määritystiedosto: /etc/redis/6379.conf //Asetustiedoston polku
Lokitiedosto: /var/log/redis_6379.log //Lokitiedoston polku
Tietohakemisto: /var/lib/redis/6379 //Tiedostopolku
Suoritettava: /usr/local/redis/bin/redis-server //suoritettava tiedostopolku
Cli Suoritettava: /usr/local/redis/bin/redis-cli //Asiakkaan komentorivityökalu
[root@localhost utils]# netstat -anpt | grep redis
[root@localhost ~]#/etc/init.d/redis_6379 stop
[root@localhost ~]#/etc/init.d/redis_6379 alku
[root@localhost ~]#/etc/init.d/redis_6379 uudelleenkäynnistys
[root@localhost ~]#/etc/init.d/redis_6379 tila
[root@localhost ~]#vim /etc/redis/6379.conf
sitoa 127.0.0.1 192.168.10.101 //Kuunteleva isäntäosoite
portti 6379 //portti
demonisoida kyllä //Ota demoniprosessi käyttöön
pidfile /var/run/redis_6379.pid //Määritä PID-tiedosto
lokitason ilmoitus //lokitaso
lokitiedosto /var/log/redis_6379.log //Määritä lokitiedosto
[root@localhost~]#/etc/init.d/redis_6379 uudelleenkäynnistys
[root@localhost utils]# netstat -anpt | grep redis
Ø redis-palvelin: työkalu Rediksen käynnistämiseen;
Ø redis-benchmark: käytetään havaitsemaan Rediksen toiminnan tehokkuus tässä koneessa;
Ø redis-check-aof: Korjaa AOF:n pysyvyystiedosto;
Ø redis-check-rdb: Korjaa RDB-pysyvyystiedostot;
Ø redis-cli: Redis-komentorivityökalu.
[root@localhost ~]# redis-cli
127.0.0.1:6379>
127.0.0.1:6379> ping
PONG
[root@localhost ~]#redis-cli -h 192.168.10.101 -p 6379
Ø apua@<group> :Saada<group> Luettelo komennoista kohteessa ;
Ø apua<command> : Pyydä apua tiettyyn komentoon;
Ø apua<tab> : Hanki luettelo aiheista, joista voi olla apua.
Huomautus:
Ø apua<tab> : Hanki luettelo aiheista, joista voi olla apua.
Kun olet kirjoittanut ohjeen, paina sarkainnäppäintä
127.0.0.1:6379>help @list
127.0.0.1:6379>ohjesarja
redis-benchmark on virallinen Redis-suorituskyvyn testaustyökalu, jolla voidaan tehokkaasti testata Redis-palvelujen suorituskykyä.
Ø -h: Määritä palvelimen isäntänimi;
Ø -p: Määritä palvelimen portti;
Ø -s: Määritä palvelinpistoke;
Ø -c: Määritä samanaikaisten yhteyksien määrä;
Ø -n: Määritä pyyntöjen lukumäärä;
Ø -d: Määritä SET/GET-arvon datakoko tavuina;
Ø -k:1 = pysy hengissä 0 = yhdistä uudelleen;
Ø -r: SET/GET/INCR käyttää satunnaisia avaimia, SADD käyttää satunnaisia arvoja;
Ø -P: Siirto putkien kautta<numreq> kysyä;
Ø -q: Pakota lopettamaan uudelleen. Vain kysely/sekuntiarvot näytetään;
Ø --csv: Tulostus CSV-muodossa;
Ø -l: Luo silmukka ja suorita testi pysyvästi;
Ø -t: Suorita vain pilkuilla eroteltu testikomentojen luettelo;
Ø -I: Lepotila. Avaa vain N vapaata yhteyttä ja odota.
[root@localhost ~]#redis-benchmark -h 192.168.10.101 -p 6379 -c 100 -n 100000 //Lähetä 100 samanaikaista yhteyttä ja 100 000 pyyntötestiä Redis-palvelimelle IP-osoitteella 192.101.3 ja portilla071168.
Huomautus:
Ø -h: Määritä palvelimen isäntänimi;
Ø -p: Määritä palvelimen portti;
Ø -c: Määritä samanaikaisten yhteyksien määrä;
Ø -n: Määritä pyyntöjen lukumäärä;
====== MSET (10 näppäintä) ======
100 000 pyyntöä suoritettu 1,02 sekunnissa
100 rinnakkaista asiakasta ##100 samanaikaista yhteyttä
3 tavun hyötykuorma
pysyä hengissä: 1
87,25 % <= 1 millisekuntia ##87.25 % komennon suoritusajoista on enintään 1 millisekunti
99,90 % <= 2 millisekuntia
100,00 % <= 2 millisekuntia
97943,19 pyyntöä sekunnissa #Pyyntöjen määrä sekunnissa
[root@localhost ~]#redis-benchmark -h 192.168.10.101 -p 6379 -q -d 100
Huomautus:
Ø -h: Määritä palvelimen isäntänimi;
Ø -p: Määritä palvelimen portti;
Ø -d: Määritä SET/GET-arvon datakoko tavuina;
Ø -q: Pakota lopettamaan uudelleen. Vain kysely/sekuntiarvot näytetään;
PING_INLINE: 121506,68 pyyntöä sekunnissa //Kuinka monta PING-toimintoa suoritetaan sekunnissa
PING_BULK: 124378,11 pyyntöä sekunnissa
SET: 121654,50 pyyntöä sekunnissa //Kuinka monta kertaa sekunnissa SET-näppäimen vlaue on valmis
HANKI: 122100,12 pyyntöä sekunnissa //Kuinka monta GET-avainaluetta on suoritettu sekunnissa
INCR: 118764,84 pyyntöä sekunnissa //Kuinka monta atomilaskentaa suoritetaan sekunnissa
LPUSH: 112612,61 pyyntöä sekunnissa
RPUSH: 118623,96 pyyntöä sekunnissa
LPOP: 107874,87 pyyntöä sekunnissa
RPOP: 114416,48 pyyntöä sekunnissa
SADD: 123304,56 pyyntöä sekunnissa
HSET: 122249,38 pyyntöä sekunnissa
SPOP: 128040,97 pyyntöä sekunnissa
LPUSH (tarvitaan LRANGE-vertailuon): 116686,12 pyyntöä sekunnissa
LRANGE_100 (ensimmäiset 100 elementtiä): 40016,00 pyyntöä sekunnissa
LRANGE_300 (ensimmäiset 300 elementtiä): 11 991,85 pyyntöä sekunnissa
LRANGE_500 (ensimmäiset 450 elementtiä): 7381,71 pyyntöä sekunnissa
LRANGE_600 (ensimmäiset 600 elementtiä): 5230,67 pyyntöä sekunnissa
MSET (10 näppäintä): 92421,44 pyyntöä sekunnissa //Useita näppäimiä v sekunnissalauePyyntöjen määrä
[root@localhost ~]# redis-benchmark -t set,lpush -n 100000 -q //Testaa Redis-palvelun suorituskykyä tällä koneella asetus- ja lpush-toimintojen aikana.
Huomautus:
Ø -n: Määritä pyyntöjen lukumäärä;
Ø -q: Pakota lopettamaan uudelleen. Vain kysely/sekuntiarvot näytetään;
Ø -t: Suorita vain pilkuilla eroteltu testikomentojen luettelo;
SET: 121951,22 pyyntöä sekunnissa
LPUSH: 127226,46 pyyntöä sekunnissa
Ø aseta: Tallenna tiedot Peruskomentomuoto on aseta avaimen arvo。
Ø saada: Hae tiedot, peruskomentomuoto on hanki avain。
olla olemassa Redis tietokannassa, kanssa avain Asiaankuuluvat komennot sisältävät pääasiassa seuraavat.
käyttää avaimet Komento voi ottaa luettelon avainarvoista, jotka ovat sääntöjen mukaisia. Yleensä se voidaan yhdistää* ,? vaihtoehtoja käytettäväksi.
127.0.0.1:6379>joukko k1 1
OK
127.0.0.1:6379>joukko k2 2
OK
127.0.0.1:6379>sarja k3 3
OK
127.0.0.1:6379>sarja v1 4
OK
127.0.0.1:6379>sarja v5 5
OK
127.0.0.1:6379>AVAimet *
1) "opettaja"
2) "k1"
3) "k2"
4) "k3"
5) "v1"
6) "v5"
127.0.0.1:6379>sarja v22 5
OK
127.0.0.1:6379>AVAimet v*
1) "v1"
2) "v5"
3) "v22"
127.0.0.1:6379>AVAimet v?
1) "v1"
2) "v5"
127.0.0.1:6379>AVAimet v??
1) "v22"
olemassa Komento voi määrittää, onko avainarvo olemassa
127.0.0.1:6379>opettaja on olemassa
(kokonaisluku) 1
Tulos on 1, mikä tarkoittaa opettaja avain on olemassa
127.0.0.1:6379>teetä on olemassa
(kokonaisluku) 0
Tulos on 0, mikä tarkoittaa teetä avainta ei ole olemassa
del Komento voi poistaa määritetyn avain
127.0.0.1:6379>avaimet*
1) "opettaja"
2) "v1"
3) "v22"
4) "k3"
5) "k1"
6) "k2"
7) "v5"
127.0.0.1:6379> del v5
(kokonaisluku) 1
127.0.0.1:6379>hanki v5
(nolla)
käyttää tyyppi Komento voidaan saada avain vastaava arvo arvon tyyppi
127.0.0.1:6379>tyyppi k1
merkkijono
Huomautus:
Redisin tukemat tietotyypit
nimeä uudelleen Komento on olemassa olevalle avain nimeä uudelleen
Varsinaisessa käytössä on suositeltavaa käyttää olemassa Komento nähdäksesi kohteen avain on olemassa, ja päätä sitten, suoritetaanko se nimeä uudelleen komento välttääksesi tärkeiden tietojen ylikirjoituksen
127.0.0.1:6379>avaimet v*
1) "v1"
2) "v22"
127.0.0.1:6379>nimeä uudelleen v22 v2
OK
127.0.0.1:6379>avaimet v*
1) "v1"
2) "v2"
127.0.0.1:6379>hanki v1
"4"
127.0.0.1:6379>hanki v2
"5"
127.0.0.1:6379>nimeä uudelleen v1 v2
OK
127.0.0.1:6379>hanki v1
(nolla)
127.0.0.1:6379>hanki v2
"4"
renamenx Komennon tehtävänä on muokata olemassa olevaa avain Nimeä uudelleen ja tarkista, onko uusi nimi olemassa.
käyttäärenamenx Kun komento nimetään uudelleen, jos kohde avain Jos se on olemassa, sitä ei nimetä uudelleen.
127.0.0.1:6379>avaimet*
1) "opettaja"
2) "k3"
3) "k1"
4) "k2"
5) "v2"
127.0.0.1:6379>hanki opettaja
"zhanglong"
127.0.0.1:6379>hanki v2
"4"
127.0.0.1:6379>renamenx v2 opettaja
(kokonaisluku) 0
127.0.0.1:6379>avaimet*
1) "opettaja"
2) "k3"
3) "k1"
4) "k2"
5) "v2"
127.0.0.1:6379>hanki opettaja
"zhanglong"
127.0.0.1:6379>hanki v2
"4
db-koko Komennon tarkoitus on tarkastella nykyistä tietokantaa avain Lukumäärä.
127.0.0.1:6379> db-koko
(kokonaisluku) 5
Redis Mukana oletuksena ilman muutoksia 16 tietokanta, tietokannan nimi on numero 0-15 nimettävä järjestyksessä
(1)Vaihda sarjanumeroon 10 tietokanta
127.0.0.1:6379>valitse 10
OK
(2)Vaihda sarjanumeroon 15 tietokanta
127.0.0.1:6379[10]>valitse 15
OK
(3)Vaihda sarjanumeroon 0 tietokanta
127.0.0.1:6379[15]>valitse 0
Redis Useat tietokannat ovat jossain määrin suhteellisen riippumattomia, esimerkiksi tietokannassa 0 Säilytä yllä k1 data, muualla 1-15 Sitä ei voi tarkastella tietokannassa.
127.0.0.1:6379>aseta k1 100
OK
127.0.0.1:6379>hanki k1
"100"
127.0.0.1:6379>valitse 1
OK
127.0.0.1:6379[1]>hanki k1
(nolla)
127.0.0.1:6379[1]>valitse 0 //Vaihda kohdetietokantaan 0
OK
127.0.0.1:6379>hanki k1 //Tarkista, onko kohdetietoja olemassa
"100"
127.0.0.1:6379>Siirrä k1 1 //tietokanta 0 keskellä k1 Siirrä tietokantaan 1 keskellä
(kokonaisluku) 1
127.0.0.1:6379>valitse 1 //Vaihda kohdetietokantaan 1
OK
127.0.0.1:6379[1]>hanki k1 //Näytä siirretyt tiedot
"100"
127.0.0.1:6379[1]> valitse 0
OK
127.0.0.1:6379> hanki k1 //tietokannassa 0 Ei voida katsoa sisään k1 arvo
(nolla)
Tyhjennä nykyiset tietokantatiedot käyttämällä FLUSHDB
Komentojen toteuttaminen tyhjennä kaikki tietokannan tiedot FLUSHALL Komennon toteutus
Redis Kaikki tiedot tallennetaan muistiin ja tallennetaan sitten asynkronisesti levylle ajoittain.(Tätä kutsutaan“Puolipysyvä tila”)Voit myös kirjoittaa jokaisen tietomuutoksen kohtaan a liitä vain tiedosto (aof)sisään(Tätä kutsutaan“Täysi pysyvyystila”)。
Koska Redis-tiedot on tallennettu muistiin, jos pysyvyyttä ei ole määritetty,Redis Uudelleenkäynnistyksen jälkeen kaikki tiedot menetetään.Siksi on tarpeen ottaa käyttöönRedis Pysyvyystoiminto tallentaa tiedot levylle Redis Uudelleenkäynnistyksen jälkeen tiedot voidaan palauttaa levyltä.Redis Kaksi menetelmää on säädetty pysyvyyttä, yksi on RDB(Redis-tietokanta) Pysyvyys (periaate on ReidsMuistissa olevan tietokannan kirjaamisen ajoitus kaatopaikka levylle RDB sinnikkyys), toinen on AOF(liittää vain tiedosto)Pysyvyys (periaate on Reids Toimintaloki kirjoitetaan tiedostoon liitteenä).
Oletusmenetelmä
RDB-pysyvyys on prosessi, jossa luodaan tilannekuva nykyisestä prosessitiedosta ja tallennetaan se kiintolevylle. RDB-pysyvyys on jaettu manuaaliseen liipaisuun ja automaattiseen liipaisuun.
Liipaisumekanismi: Manuaalinen laukaisu vastaa tallennus- ja bgsave-komentoja.
save-komento: estää nykyisen Redis-palvelimen, kunnes RDB-prosessi on valmis. Tapauksissa, joissa on paljon muistia, se aiheuttaa aikaeston. Ei suositella käytettäväksi verkkoympäristöissä.
bgsave-komento: Redis-prosessi suorittaa haarukkatoiminnon (prosessin luomiseen käytetty toiminto) aliprosessin luomiseksi. RDB-pysyvyysprosessi on vastuussa aliprosessista ja päättyy automaattisesti valmistumisen jälkeen. Lukitus tapahtuu vain haarukkavaiheen aikana.
RDB:n edut:
RDB on kompakti, pakattu binääritiedosto, joka edustaa tilannekuvaa Redis-tiedoista tietyllä hetkellä. Se sopii erittäin hyvin varmuuskopiointiin, täydelliseen kopiointiin ja muihin skenaarioihin. Suorita esimerkiksi bgsave-varmuuskopio 6 tunnin välein ja kopioi RDB-tiedosto etäkoneeseen tai tiedostojärjestelmään katastrofipalautusta varten.
Redis lataa RDB:n ja palauttaa tiedot paljon nopeammin kuin AOF-menetelmä.
RDB:n haitat:
RDB-tilassa olevat tiedot eivät voi saavuttaa reaaliaikaista pysyvyyttä/toisen tason pysyvyyttä. Koska joka kerta kun bgsave ajetaan, haarukkatoiminto suoritetaan lapsiprosessin luomiseksi, mikä on raskas operaatio ja toistuvan suorituksen kustannukset ovat liian korkeat.
RDB-tiedostot tallennetaan tietyssä binäärimuodossa Redis-versioiden kehityksen aikana on olemassa useita RDB-versioiden muotoja. Ongelmana on, että Redis-palvelun vanha versio ei ole yhteensopiva RDB-muodon uuden version kanssa.
AOF (apppend only file) pysyvyys: tallenna jokainen kirjoituskomento itsenäiseen lokiin ja suorita sitten AOF-tiedoston komento uudelleen tietojen palauttamiseksi uudelleenkäynnistyksen yhteydessä. AOF:n päätehtävä on ratkaista reaaliaikainen tietojen pysyvyyden ongelma. Se on nyt Redisin pysyvyyden valtavirta.
Kriteerit näiden kahden välillä valinnalle:
Uhraa jonkin verran suorituskykyä vastineeksi paremmasta välimuistin johdonmukaisuudesta (AOF),
Kun kirjoitustoiminnot ovat toistuvia, älä ota varmuuskopiointia käyttöön vastineeksi paremmasta suorituskyvystä ja odota manuaalista käyttöä. Tallentaa kun, tee varmuuskopio uudelleen (RDB)
Huomautus:
Jos pysyvä tiedosto on ladattava uudelleenkäynnistyksen jälkeen, AOF-tiedostot valitaan.
Jos RDB on ensin käytössä ja sitten AOF käytössä, ja RDB säilytetään ensin, AOF korvaa RDB-tiedoston sisällön.
[root@localhost ~]# vim /etc/redis/6379.conf
Avaa 6379.conf Hae tiedoston jälkeen Tallentaa, näet kokoonpanotiedot alla olevan kuvan mukaisesti.
olla olemassa Redis Asetustiedostossa on kolme synkronointimenetelmää, ne ovat:
aina: synkroninen pysyvyys, aina kun tiedot muuttuvat, ne kirjoitetaan levylle välittömästi
everysec: Suositellaan oletuksena, tallenna asynkronisesti joka sekunti (oletusarvo)
ei: Ei synkronointia, joten käyttöjärjestelmä päättää synkronointitavan
Ohita viimeinen mahdollisesti ongelmallinen ohje
[root@localhost ~]#/etc/init.d/redis_6379 uudelleenkäynnistys
ratkaistakseen AOF Jos tiedostokoko kasvaa edelleen, käyttäjät voivat raportoida osoitteeseen Redis lähettää BGREWRITEAOFTilaus.BGREWRITEAOF Komento poistetaan kautta AOF tiedostossa olevat ylimääräiset komennot ohittavat (kirjoittaa uudelleen)AOFtiedosto, tee AOF Pidä tiedostokoko mahdollisimman pienenä.
127.0.0.1:6379> bgrewriteaof
Taustalla vain liitetiedoston uudelleenkirjoitus aloitettu
# Kun loki on BGREWRITEAOF,josno-appendfsync-on-rewriteAseta arvoon kyllä, mikä tarkoittaa, että uusia kirjoitustoimintoja ei synkronoida fsyncin kanssa, vaan ne tallennetaan vain väliaikaisesti puskuriin. , välttääksesi levyn IO-toimintoristiriidat, odota, kunnes uudelleenkirjoitus on valmis, ennen kuin kirjoitat. Rediksen oletusarvo on ei
no-appendfsync-on-rewrite no
# Kun nykyinen AOF-tiedoston koko on kaksi kertaa AOF-tiedoston koko viimeisen lokin uudelleenkirjoituksen aikana, tapahtuu BGREWRITEAOF-toiminto.
automaattinen uudelleenkirjoitusprosentti 100
Huomautus:
100 viittaaAOF-tiedoston kasvusuhde viittaa nykyisen AOF-tiedoston kasvusuhteeseen verrattuna viimeiseen uudelleenkirjoitukseen.,100 on kaksi kertaa
#Nykyisen AOF-tiedoston vähimmäisarvo BGREWRITEAOF-komennon suorittamiseksi, jotta vältetään toistuva BGREWRITEAOF, koska tiedostokoko on pieni, kun Reids käynnistetään ensimmäisen kerran.
auto-aof-rewrite-min-size 64mb
192.168.9.236:7001> tieto muisti
used_memory:1210776 #Käytetyn muistin koko,tavuissa
used_memory_human:1,15M # Näyttö yksiköllä,paikassa M
used_memory_rss:7802880 # Kuinka paljon muistia redis vie käyttöjärjestelmän näkökulmasta?
used_memory_rss_human:7.44M # Näyttö yksiköllä
maxmemory:1073741824 # Muistin enimmäiskoko
maxmemory_human:1.00G # Näyttö yksiköllä
maxmuisti-politiikka: Kierrätysstrategia
Ø volatile-lru: se sallii Redis Valitse koko tietojoukosta vähiten käytetty avain Poistaa
Ø haihtuva-ttl:Eliminoi avaimen vanhenemisajan mukaan
Ø haihtuva-satunnainen: Valitse satunnaisesti poistettavat tiedot tietokokoelmasta asetetulla vanhenemisajalla;
Ø allkeys-lru:käyttää LRU Algoritmit poistavat tiedot kaikista tietojoukoista;
Ø kaikki avaimet-satunnainen: Valitse satunnaisesti tiedot poistettaviksi tiedonkeruusta;
Ø häätö: Poista tietojen poistaminen käytöstä (oletusarvo)
Huomautus:
Aseta avaimen vanhenemisaika
vanhenee v1 10
v1:n vanhenemisaika on 10 sekuntia
Huomautus:
kun Redis Se on hankittava takaisin muistipaineen vuoksi avain tunnin,Redis Ensimmäinen harkinta ei ole kierrättää vanhimpia tietoja, vaan vähiten käytettyjä tietoja. avain tai vanhentumassa avain Valitse yksi satunnaisesti avain, poistettu tietojoukosta
Etsi vaadittava salasana ja sen jälkeen salasana Se on oletuksena kommentoitu, eli salasanaa ei vaadita oletuksena seuraavasti:
Avaa kommentti, aseta se omaksi salasanaksesi ja käynnistä uudelleen
Käytä redis-cli muodostaaksesi yhteyden redisiin ja suorita seuraava komento
konfiguraatiosarja vaatia passin 123456
Kun suoritus on valmis, sinun ei tarvitse käynnistää uudelleen Sinun on annettava salasanasi, kun poistut asiakasohjelmasta ja kirjaudut sisään uudelleen.
[root@localhost bin]# ./redis-cli -a 123456
[root@localhost bin]# ./redis-cli127.0.0.1:6379> todennus 123456
[root@localhost bin]# ./redis-cli -a 123456 shutdown
1) Asetustiedostoa muuttamalla asetettu salasana tulee voimaan pysyvästi.
2) Asetustiedostossa määritetyn salasanan muuttaminen edellyttää uudelleenkäynnistyksen voimaantuloa. Käytä komennolla asetettua salasanaa astuakseen voimaan uloskirjautumisen ja uudelleen sisäänkirjautumisen jälkeen, ja se raukeaa uudelleenkäynnistyksen jälkeen.
3) Komennon prioriteetti on korkeampi kuin asetustiedoston prioriteetti