2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Relaatiotietokanta on strukturoitu tietokanta, joka on luotu relaatiomallitietokantaan ja luotu tietuesuuntautuneeksi.
Yleiset relaatiotietokannat: Oracle, MySQL, SQL Server, Microsoft Access, DB2.
NOSQL=Ei vain SQL on yleinen termi ei-relaatiotietokantoille. Tallennusmenetelmästä, tallennusrakenteesta ja käyttöskenaarioista riippuen sitä kutsutaan ei-relaatiotietokannaksi. Muita tietokantoja kuin valtavirran relaatiotietokantoja voidaan kutsua ei-relaatiotietokannoiksi.
Yleiset ei-relaatiotietokannat: Redis, MongoDB, Hbase, CouhDB.
Redis on avoimen lähdekoodin Nosql-tietokanta, joka on kirjoitettu C-kielellä. Se toimii muistin perusteella ja tukee pysyvyyttä. Sen porttinumero on 6379.
1. Asenna Redis
[root@localhost ~]# systemctl pysäyttää palomuuri
[root@localhost ~]# setenforce 0
[root@localhost ~]# yum -y asennus gcc* zlib-devel
[root@localhost ~]#tar xvzf redis-4.0.9.tar.gz
[root@localhost ~]#cd redis-4.0.9/
[root@localhost redis-4.0.9]# merkki
Ilmoitus:
Virheilmoitus luodaan, kun make,
ratkaisu:
Ratkaisu 1: Käytä parametria make MALLOC=libc määrittääksesi libc:lle käännettävän muistin varaajan
Ratkaisu 2: tee puhtaaksi && tee disclean
[root@localhost redis-4.0.9]# make PREFIX=/usr/local/redis install
[root@localhost utils]# ln -s /usr/local/redis/bin/* /usr/local/bin/
[root@localhost redis-4.0.9]# cd utils/
Yksi niistä: install_server.sh on alustuskomentosarja
[root@localhost utils]# ./install_server.sh
Valitse redis-suoritettava polku [] /usr/local/redis/bin/redis-server(antaa suoritettavan polun)
Katso prosessin ja palvelun ohjaus
[root@localhost utils]# netstat -anpt | grep redis
tcp 0 0 127.0.0.1:6379 0.0.0.0:* KUUNTELU 5360/redis-palvelin 1
[root@localhost utils]# /etc/init.d/redis_6379 stop(redis on suljettu)
[root@localhost utils]# /etc/init.d/redis_6379 aloitus(päällä)
[root@localhost utils]# /etc/init.d/redis_6379 status (osavaltio)
Konfigurointiparametrien muuttaminen
[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
2.redis komentotyökalu
[root@localhost utils]# redis-cli(Paikallinen kirjautuminen)
[root@localhost utils]# redis-cli -h 192.168.10.101 -p 6379(etäkirjautuminen)
192.168.10.101:6379> ping(Havaitsemispalvelu toimii normaalisti)
PONG
3: redis-benchmark-testaustyökalu
redis-benchmark on virallinen Redis-suorituskyvyn testaustyökalu, jolla voidaan tehokkaasti testata Redis-palvelujen suorituskykyä.
(1) Testipyynnön suorituskyky
[root@localhost ~]#redis-benchmark -h 192.168.10.101 -p 6379 -c 100 -n 100000
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 määrä;
(2) Testaa pääsyn suorituskykyä
[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;
set tallentaa datan komentomuoto set key value
get Get data komentomuoto get key
1. Lisää avain-arvo-pareja
127.0.0.1:6379> asettaa 1 1
OK
127.0.0.1:6379> sarja 2 2
OK
127.0.0.1:6379> sarja 3 3
OK
2. Näytä kaikki tietokannan arvot
127.0.0.1:6379> avaimet *
1) "3"
2) "1"
3) "2"
3. Tarkastele tietokannassa v-kirjaimella alkavia tietoja
127.0.0.1:6379>AVAimet v*
4. Tarkastele tietokannassa olevia tietoja, jotka alkavat v:llä
127.0.0.1:6379>AVAimet v?
5.Tarkastele nykyistä tietokantaa sovelluksella v alkuSeuraava sisältää mitkä tahansa kaksi numeroa tietoja
127.0.0.1:6379>AVAimet v??
Selvitä, onko arvo olemassa.
127.0.0.1:6379>olemassa f5Selvitä, onko f5 olemassa
(kokonaisluku) 1 Tulos on 1, mikä osoittaa, että f5-näppäin on olemassa
Kuten
(kokonaisluku) 0 Tulos on 0, mikä tarkoittaa, että f5-näppäintä ei ole olemassa
del Komento voi poistaa määritetyn avain
127.0.0.1:6379> del v5 Poista v5 tietokannasta
(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>nimeä uudelleen v22 v2 Nimeä v22 uudelleen v2:ksi
OK
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.
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
127.0.0.1:6379>aseta k1 100 Luo k1 tietokantaan 0
OK
127.0.0.1:6379>hanki k1
"100"
127.0.0.1:6379>Siirrä k1 1 //Siirrä k1 tietokannassa 0 tietokantaan 1
(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 //K1:n arvoa ei voi tarkastella tietokannassa 0
(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 Kaikki tiedot tallennetaan 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 Pysyvyydelle tarjotaan kaksi menetelmää, yksi on RDB(Redis-tietokanta) Pysyvyys (periaate on ReidsMuistissa olevien tietokantatietueiden ajastettu vedos (kaatopaikka)levylle RDB sinnikkyys), toinen on AOF(liittää vain tiedosto)Pysyvyys (periaate on Reids Toimintaloki kirjoitetaan tiedostoon liitteenä).
Ero RDB:n ja AOF:n välillä
ROB kirjoittaa tiedot levylle määritetyn aikavälin kuluessa. Se kirjoittaa tiedot ensin väliaikaiseen kansioon. Se korvaa edellisen tiedoston ja tallentaa sen binääripakkauksella.
AOF tallentaa kaikki palvelimen kirjoitus- ja poistotoimenpiteet lokimuotoon. Kyselytoimintoja ei tallenneta, vaan ne tallennetaan tekstimuodossa.
RDB:n ja AOF:n edut ja haitat
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.
Tietojen palautus on nopeaa.
Maksimoi suorituskyky
Korkea käynnistysteho
RDBpuute:
Tiedot, joita ei tallennettu ennen sammutusta, menetetään.
RDB valmistuu haarukan lapsiprosessin kautta, mikä kuluttaa resursseja.
AOF:n edut:
Tietojen kestävyys on korkea
Liitä tilassa lokitiedoston sisältö ei tuhoudu, vaikka olisi seisokki.
Uudelleenkirjoitusmekanismi voidaan käynnistää tietoturvan suojaamiseksi.
AOF:n haitat:
AOF-tietojen palautusnopeus on hidas
AOF:n toiminnan tehokkuus on alhainen
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 rediesin on ladattava pysyvyystiedosto uudelleenkäynnistyksen jälkeen,etusijallaAOF-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
Avata 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, se kirjoitetaan levylle välittömästi ##702 rivi
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
192.168.9.236:7001> tieto muisti
käytetty_muisti:1210776 Käytetyn muistin koko tavuina
käytetty_muisti_ihminen: 1,15 miljNäytetään yksiköillä M
used_memory_rss:7802880Kuinka paljon muistia redis vie käyttöjärjestelmän näkökulmasta?
Used_memory_rss_ihminen:7,44MNäyttö yksiköillä
suurin muisti: 1073741824Muistin enimmäiskoko
suurin muisti_ihminen: 1.00G Näyttö yksiköillä
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)
Aseta avaimen vanhenemisaika
127.0.0.1:6379>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