Hoe u hoë beskikbaarheid kan skep met MySQL-replikasie op 'n Ubuntu 18.04 VPS of 'n toegewyde bediener
Hoe u hoë beskikbaarheid kan skep met MySQL-replikasie op ‘n Ubuntu 18.04 VPS of ‘n toegewyde bediener
0.2 Voordat u begin
1.1 Dateer die stelselpakkette in al drie nodusse op.
1.2 Stel die bestuursknooppunt op
1.3 Stel die dataknoop op
1.4 Stel die SQL-knoop op
3 Kyk na die top 3 Linux-gasheerdienste
3.1 Verwante artikels oor hoe om te doen
Hoë beskikbaarheid met betrekking tot ‘n databasis beteken dat die betrokke databasis die foute van die gasheer kan hanteer. Dit is ook belangrik dat die databasis kan herstel van die foute van die MySQL, die bedryfstelsel of die hardeware-instandhouding wat andersins ‘n stilstand kan veroorsaak..
Oplossings met ‘n hoë beskikbaarheid hang af van die tipe toepassing wat u omgewing gebruik’beste praktyke of die beskikbaarheidsvlak wat benodig word. Met MySQL, net soos die tipiese clusteromgewing, is daar:
Bestuursknooppunt wat gebruik word om die kliënte te monitor en te konfigureer
Dataknope wat gebruik word om data te stoor en te deel / te repliseer
SQL-nodusse is die koppelvlakke om aan al die nodusse te koppel
Voordat u begin
Ten minste drie VPS-gevalle met Ubuntu 18.04 wat in ‘n virtuele privaatnetwerkomgewing gekonfigureer is
Nie-wortelgebruikers met sudo-regte wat op elke VPS gekonfigureer is.
wget en teer pakkette wat in die VPS geïnstalleer is.
Dateer die stelselpakkette in al drie nodusse op.
Stel die bestuursknooppunt op
$ wget http://dev.mysql.com/get/Downloads/MySQL-Cluster-7.4/mysql-cluster-gpl-7.4.12-linux-glibc2.5-x86_64.tar.gz
Onttrek die saamgeperste lêer in ‘n nuwe lêergids.
$ tar -xzvf mysql-cluster-gpl-7.4.12-linux-glibc2.5-x86_64.tar.gz -C mysql –strip-componenten = 1
Kopieer die groepbestuursbediener se binêre lêers; ndb_mgm en ndb_mgmd in u plaaslike binêre lêergids en verander die modus van die lêers na uitvoerbaar.
$ sudo cp / mysql / bin / ndb_mgm * / usr / local / bin
$ sudo chmod + x / usr / local / bin / ndb_mgm *
Skep ‘n konfigurasielêer met die naam config.ini in ‘n nuutgemaakte mysql-cluster gids vir die bestuursklusterknoop. Hierdie lêer identifiseer die SQL-knoop en die bestuursknooppunt’s IP-adresse.
Dit sal ook die dataknoop identifiseer’s IP-adres en hul datagidse.
$ sudo mkdir -p / var / lib / mysql-cluster
$ nano /var/lib/mysql-cluster/config.ini
Spesiale opmerking: onthou om die IP-adresse te vervang met adresse in u omgewingopstelling. Wat die onderstaande konfigurasiekode betref, as u slegs een dataknooppunt het, moet die NoOfReplicas op 1 gestel word, omdat u slegs een dataknooppunt het waar ‘n tabelreplika geberg kan word..
NoOfReplicas = 1
DataMemory = 80M
IndexMemory = 18M
# Klusterbeheer / bestuursknooppunt
hostname = 192.168.56.10
hostname = 192.168.56.11
DataDir = / var / lib / mysql-cluster
# Dataknoop 1
Host Name = 192.168.56.12
hostname = 192.168.56.40
Begin nou die cluster-bestuursknooppunt en skakel dit in werking. Onthou al die ander nodusse behoort aktief te wees, anders kry u ‘n fout op die nie-bestaande IP-adresse.
$ sudo ndb_mgmd -f /var/lib/mysql-cluster/config.ini –configdir = / var / lib / mysql-cluster / MySQL Cluster Management Server mysql-5.6.31 ndb-7.4.12 $ sudo echo’ndb_mgmd – f /var/lib/mysql-cluster/config.ini –configdir = / var / lib / mysql-cluster / ‘ >> /etc/rc.local
Spesiale opmerking: as u ‘n toestemmingsfout kry, probeer om aan te meld as root (sudo su) en voer die opdrag weer uit.
Stel die dataknoop op
Installeer die libaio1-pakket vanaf Linux, wat dit moontlik maak om verskeie I / O-oproepe gelyktydig te maak.
$ sudo apt installeer libaio1
Skep ‘n nuwe groep en ‘n gebruiker genaamd mysql
$ groep het mysql bygevoeg
$ userdd -g mysql mysql
Laai die mysql-cluster pakket net soos u in die bestuursknooppunt gedoen het.
$ tar -xzvf mysql-cluster-gpl-7.4.12-linux-glibc2.5-x86_64.tar.gz -C mysql – strook-komponente = 1
Hierdie keer skuif u die hele mysql-lêergids na / usr /plaaslike directory.
$ sudo mv mysql / / usr / local
Verander gids in die geskuifde lêergids en voer die stelseldatabasis vir die skep van mysql_install_db
$ cd / usr / local / mysql
$ ./scripts/mysql_install_db –user = mysql
Kopieer die mysql-dienslêer na die init.d-lêergids en aktiveer die mysql-diens tydens opstart.
$ sudo cp-ondersteuningslêers / mysql.server /etc/init.d/mysql
$ sudo systemctl maak mysql moontlik
Skuif die plaaslike binêre lêers na u plaaslike binêre gids en skep ‘n nuwe symlink.
$ sudo mv bin / * / usr / local / bin /
$ sudo rm -rf bin /
$ sudo ln -s / usr / local / bin / usr / local / mysql /
Verander die mysql-gids na wortel eienaar in die mysqlgroep- en datagids aan mysql-eienaar in mysql-groep.
$ sudo chown -R wortel: mysql .
Skep nou ‘n nuwe konfigurasielêer vir u dataknooppunt om die groep en bestuursknooppunt te definieer waaraan dit behoort.
$ sudo chown -R mysql / var / lib / mysql-cluster
Begin die dataknoop
$ ndbd – aanvanklike 2018-11-01 00:51:08 [ndbd] INFO – Engel gekoppel aan ‘192.168.56.20:1186’
2018-11-01 00:51:23 [ndbd] INFO – Engel toegeken nodeid: 2 $ sudo systemctl start mysql
U kan nou ‘n wagwoord vir u mysql-gebruik skep
Stel die SQL-knoop op
U moet eers die mysql-groeppakket installeer en die lêergids na u / usr / plaaslike gids skuif.
$ mv mysql / usr / local /
Laai die installeer databasis script lêer.
$ sudo ./scripts/mysql_install_db –user = mysql
Kopieer die mysql-dienslêer en stel dit in werking
$ cp ondersteuningslêers / mysql.server /etc/init.d/mysql
$ sudo systemctl aktiveer msql
Uiteindelik, skep ‘n my.cnf lêer en plak die volgende kode in terwyl u IP-adres vir bestuursknope vervang.
DataDir = / usr / local / mysql / data
gebruiker = mysql
# Begin die ndb-stoormotor
NDB-connectstring = 192.168.56.20
# MySQL Pid en Log
log-fout = / var / log / mysqld.log
pid-lêer = / var / run / mysqld / mysqld.pid
Stoor veranderinge, verlaat dan die mysql-diens en stel u wagwoord op.
$ sudo systemctl begin mysql
$ mysql -u wortel -p
Om te verifieer dat u installasie werk, skep u ‘n voorbeelddatabasis in u SQL-knooppunt en kyk of dit in die dataknoop gerepliseer sal word.
Skep ‘n nuwe databasis in dieselfde SQL VPS (noem dit wat u wil)
mysql> SKEPPENDE groente;
Navraag OK, 1 ry beïnvloed (0,02 sek.)
Meld aan by die dataknooppunt en kyk na die databasisse, die geskepde databasis in die SQL-knoop moes gerepliseer gewees het.
$ mysql -u wortel -p mysql> SHOWDATABASES;
U het u MySQL-klusterreplikasie suksesvol opgestel vir hoë beskikbaarheid. U kan u clusterstatus afsluit vanaf die bestuursknooppunt vanaf die ndb_mgm-konsole deur die afsluitopdrag te gebruik.
Laastens, om dieselfde vanaf die ndb_mgm-konsole te monitor, kan u die Wys bevel. Die MySQL-clusterreplikasie het bewys dat dit fouttoleransie, outomatiese uitval en elastisiteit bied.
Hoe om MYSQL 8.0 te installeer en ‘n databasis op ‘n Ubuntu 18.04 Linux VPS te skep
Hoe om MySQL Sandboxes met DBdeployer te installeer en te skep op ‘n Ubuntu 18.04 VPS of ‘n toegewyde bediener
Hoe u phpMyAdmin op Ubuntu 18.04 VPS of die toegewyde bediener kan beveilig?
Hoe om MySQL 5 uit te skakel "Streng modus" op ‘n Ubuntu 18.04 VPS of ‘n toegewyde bediener
Hoe om MYSQL 8.0 te installeer en ‘n databasis te skep op ‘n CentOS 7 Linux VPS of ‘n toegewyde bediener
Hoe om ‘n nie-wortelgebruiker op u Ubuntu 18.04 VPS of ‘n toegewyde bediener te skep
Hoe om u MySQL-databasis te rugsteun op ‘n Ubuntu 18.04 VPS of ‘n toegewyde bediener
Hoe om MySQL 5 “Strict Mode” uit te skakel op ‘n Ubuntu 18.04 VPS of ‘n toegewyde bediener