Kā instalēt, aizsargāt un veiktspējas MariaDB datu bāzes serveri
Datu bāzes serveris ir būtiska tīkla infrastruktūras sastāvdaļa, kas nepieciešama mūsdienu lietojumprogrammām. Bez iespējas saglabāt, izgūt, atjaunināt un dzēst datus (kad nepieciešams), tīmekļa un darbvirsmas lietotņu lietderība un darbības joma kļūst ļoti ierobežota.
Turklāt zināšanas par to, kā instalēt, pārvaldīt un konfigurēt datu bāzes serveri (tā, lai tas darbotos, kā paredzēts), ir būtiska prasme, kas jāapgūst katram sistēmas administratoram.
Šajā rakstā mēs īsi pārskatīsim, kā instalēt un aizsargāt MariaDB datu bāzes serveri, un pēc tam mēs izskaidrosim, kā to konfigurēt.
MariaDB servera instalēšana un drošība
CentOS 7.x versijā MariaDB aizstāja MySQL, kas joprojām ir atrodama Ubuntu (kopā ar MariaDB). Tas pats attiecas arī uz openSUSE.
Īsāk sakot, šajā apmācībā mēs izmantosim tikai MariaDB, taču, lūdzu, ņemiet vērā, ka abām Relāciju datu bāzes pārvaldības sistēmām (saīsināti RDBMS) ir atšķirīgi nosaukumi un attīstības filozofija.
Tas nozīmē, ka klienta puses komandas ir vienādas gan MySQL, gan MariaDB, un konfigurācijas faili tiek nosaukti un atrodas tajās pašās vietās.
Lai instalētu MariaDB, rīkojieties šādi:
--------------- On CentOS/RHEL 7 and Fedora 23 --------------- # yum update && yum install mariadb mariadb-server # CentOS --------------- On Debian and Ubuntu --------------- $ sudo aptitude update && sudo aptitude install mariadb-client mariadb-server --------------- On openSUSE --------------- # zypper update && zypper install mariadb mariadb-tools # openSUSE
Ņemiet vērā, ka Ubuntu jums tiks lūgts ievadīt paroli RDBMS saknes lietotājam.
Kad iepriekš minētās pakotnes ir instalētas, pārliecinieties, vai datu bāzes pakalpojums darbojas un ir aktivizēts, lai sāktu sāknēšanu (CentOS un openSUSE jums šī darbība būs jāveic manuāli, savukārt Ubuntu instalēšanas process jau būs par to parūpējies. tev):
--------------- On CentOS/RHEL 7 and Fedora 23 --------------- # systemctl start mariadb && systemctl enable mariadb --------------- On openSUSE --------------- # systemctl start mysql && systemctl enable mysql
Pēc tam palaidiet skriptu mysql_secure_installation
. Šis process ļaus jums:
- iestatiet/atiestatiet paroli RDBMS saknes lietotājam
- noņemiet anonīmus pieteikšanās datus (tādējādi ļaujot RDBMS pieteikties tikai lietotājiem ar derīgu kontu)
- atspējojiet root piekļuvi mašīnām, kas nav localhost
- noņemiet testa datu bāzi (kurai ikviens var piekļūt)
- aktivizēt izmaiņas, kas saistītas ar 1. līdz 4.
Lai iegūtu detalizētāku šī procesa aprakstu, skatiet sadaļu Post instalēšana sadaļā MariaDB Database instalēšana RHEL/CentOS/Fedora un Debian/Ubuntu.
MariaDB servera konfigurēšana
Noklusējuma konfigurācijas opcijas tiek nolasītas no šādiem failiem norādītajā secībā: /etc/mysql/my.cnf
, /etc/my.cnf
un ~ /.my.cnf
.
Visbiežāk pastāv tikai /etc/my.cnf
. Šajā failā mēs iestatīsim servera mēroga iestatījumus (kurus katram lietotājam var atcelt ar vieniem un tiem pašiem iestatījumiem sadaļā ~/.my.cnf
).
Pirmā lieta, kas mums jāņem vērā par my.cnf
, ir tā, ka iestatījumi ir sakārtoti kategorijās (vai grupās), kur katrs kategorijas nosaukums ir pievienots kvadrātiekavās.
Servera sistēmas konfigurācijas ir norādītas sadaļā [mysqld]
, kur parasti zemāk esošajā tabulā atradīsit tikai pirmos divus iestatījumus. Pārējās ir citas bieži izmantotās opcijas (ja norādīts, noklusējuma vērtību mainīsim ar pielāgotu, kādu izvēlamies):
Mēs to mainīsim, lai norādītu dienestam klausīties tikai tā galveno adresi (192.168.0.13):
iesiešanas_adrese = 192.168.0.13
Noklusējuma vērtību (3306) aizstāsim ar 20500 (bet mums jāpārliecinās, ka nekas cits neizmanto šo portu):
osta = 20500
Kaut arī daži cilvēki apgalvos, ka neskaidra drošība nav laba prakse, noklusējuma lietojumprogrammu pieslēgvietu maiņa pret augstākām ir elementāra - tomēr efektīva - metode, kas kavē ostu skenēšanu.
Noklusējuma vērtība tiks aizstāta ar 256 MB:
innodb_buffer_pool_size = 256M
Ja vien atļauju noteikšanai nav nepieciešami resursdatoru nosaukumi, ieteicams šo mainīgo atspējot (lai paātrinātu savienojumus un vaicājumus), iestatot tā vērtību 1:
izlaist_nosaukums_atrisināt = 1
Jums jāizvēlas vaicājuma kešatmiņas lielums, kas atbilst jūsu vajadzībām, pamatojoties uz 1) atkārtotu vaicājumu skaitu un 2) aptuveno ierakstu skaitu, kuru sagaidāms, ka šie atkārtotie vaicājumi atgriezīsies. Pagaidām šī vērtība tiks iestatīta uz 100 MB:
query_cache_size = 100M
max_connections = 30 Katrs savienojums izmantos pavedienu un tādējādi patērēs atmiņu. Iestatot max_connections, ņemiet vērā šo faktu.
Tas atkal ir atkarīgs no gaidāmo savienojumu skaita. Mēs varam droši iestatīt šo vērtību uz pusi no max_connections skaita:
thread_cache_size = 15
# yum install policycoreutils-python # semanage port -a -t mysqld_port_t -p tcp 20500
Pēc tam restartējiet pakalpojumu MariaDB.
MariaDB veiktspējas noskaņošana
Lai palīdzētu mums pārbaudīt un pielāgot konfigurāciju atbilstoši mūsu īpašajām vajadzībām, mēs varam instalēt mysqltuner (skriptu, kas sniegs ieteikumus, lai uzlabotu mūsu datu bāzes servera veiktspēju un palielinātu tā stabilitāti):
# wget https://github.com/major/MySQLTuner-perl/tarball/master # tar xzf master
Pēc tam nomainiet direktoriju mapē, kas iegūta no tarball (precīza versija jūsu gadījumā var atšķirties):
# cd major-MySQLTuner-perl-7dabf27
un palaidiet to (jums tiks piedāvāts ievadīt administratīvā MariaDB konta akreditācijas datus)
# ./mysqltuner.pl
Skripta izvade pati par sevi ir ļoti interesanta, taču pārejam uz leju, kur maināmie maināmie ir norādīti ar ieteicamo vērtību:
Iestatījums query_cache_type
norāda, vai vaicājuma kešatmiņa ir atspējota (0) vai iespējota (1). Šajā gadījumā mysqltuner iesaka mums to atspējot.
Tātad, kāpēc mums ieteicams to tagad deaktivizēt? Iemesls ir tāds, ka vaicājumu kešatmiņa galvenokārt ir noderīga scenārijos ar augstu lasīšanas/maz rakstīšanas līmeni (kas nav mūsu gadījums, jo mēs tikko instalējām datu bāzes serveri).
BRĪDINĀJUMS: Pirms izmaiņu veikšanas ražošanas servera konfigurācijā, ieteicams konsultēties ar ekspertu datu bāzes administratoru, lai pārliecinātos, ka mysqltuner ieteikums negatīvi neietekmēs esošo iestatījumu.
Kopsavilkums
Šajā rakstā mēs esam paskaidrojuši, kā konfigurēt MariaDB datu bāzes serveri pēc tā instalēšanas un nodrošināšanas. Iepriekš tabulā uzskaitītie konfigurācijas mainīgie ir tikai daži iestatījumi, kurus ieteicams apsvērt, sagatavojot serveri lietošanai vai noregulējot to vēlāk. Pirms izmaiņu veikšanas vienmēr skatiet oficiālo MariaDB dokumentāciju vai skatiet mūsu MariaDB Performance pielāgošanas padomus:
Kā vienmēr, nekavējoties informējiet mūs, ja jums ir kādi jautājumi vai komentāri par šo rakstu. Vai ir kādi citi servera iestatījumi, kurus vēlaties izmantot? Jūtieties brīvi dalīties ar pārējo kopienu, izmantojot zemāk esošo komentāru veidlapu.