Si të instaloni MariaDB në Debian 10
Prezantimi
Stack LAMP (Linux, Apache, MySQL, PHP/Python/Perl). Ai synohet të jetë një zëvendësim për MySQL dhe Debian tani dërgohet vetëm me paketat MariaDB. Nëse përpiqeni të instaloni paketa të lidhura me serverin MySQL, në vend të kësaj do të merrni versionet e përputhshme të zëvendësimit të MariaDB.
Versioni i shkurtër i këtij udhëzuesi instalimi përbëhet nga tre hapat e mëposhtëm:
- Përditësoni indeksin tuaj të paketës duke përdorur
apt
- Instaloni paketën
mariadb-server
duke përdorurapt
. Paketa gjithashtu tërheq mjete të ngjashme për të bashkëvepruar me MariaDB - Ekzekutoni skriptin e sigurisë të përfshirë
mysql_secure_installation
për të kufizuar aksesin në server
- sudo apt update
- sudo apt install mariadb-server
- sudo mysql_secure_installation
Ky tutorial do të shpjegojë se si të instaloni versionin 10.3 të MariaDB në një server Debian 10 dhe të verifikoni që ai po funksionon dhe ka një konfigurim fillestar të sigurt.
Parakushtet
Për të përfunduar këtë tutorial, do t'ju duhet një server Debian 10 i konfiguruar me një përdorues joroot me privilegje sudo
dhe një mur zjarri. Ju mund ta konfiguroni këtë duke ndjekur udhëzuesin tonë fillestar të konfigurimit të serverit.
Hapi 1 - Instalimi i MariaDB
Në Debian 10, versioni 10.3 i MariaDB përfshihet në depot e paketave APT si parazgjedhje. Është shënuar si varianti i parazgjedhur i MySQL nga ekipi i paketimit Debian MySQL/MariaDB.
Për ta instaluar, përditësoni indeksin e paketës në serverin tuaj me apt
:
- sudo apt update
Pastaj instaloni paketën:
- sudo apt install mariadb-server
Këto komanda do të instalojnë MariaDB, por nuk do t'ju kërkojnë të vendosni një fjalëkalim ose të bëni ndonjë ndryshim tjetër të konfigurimit. Për shkak se konfigurimi i parazgjedhur e lë instalimin tuaj të MariaDB të pasigurt, ju do të përdorni një skript që ofron paketa mariadb-server
për të kufizuar aksesin në server dhe për të hequr llogaritë e papërdorura.
Hapi 2 — Konfigurimi i MariaDB
Për instalimet e reja të MariaDB, hapi tjetër është ekzekutimi i skriptit të sigurisë të përfshirë. Ky skenar ndryshon disa nga opsionet e paracaktuara më pak të sigurta. Ne do ta përdorim atë për të bllokuar hyrjet në distancë root dhe për të hequr përdoruesit e papërdorur të bazës së të dhënave.
Ekzekutoni skriptin e mëposhtëm të sigurisë:
- sudo mysql_secure_installation
Kjo do t'ju çojë përmes një sërë kërkesash ku mund të bëni disa ndryshime në opsionet e sigurisë së instalimit tuaj MariaDB. Kërkesa e parë do t'ju kërkojë të futni fjalëkalimin aktual root të bazës së të dhënave. Meqenëse nuk e keni konfiguruar ende një, shtypni ENTER
për të treguar \asnjë.
Kërkesa tjetër ju pyet nëse dëshironi të vendosni një fjalëkalim root të bazës së të dhënave. Shkruani N
dhe më pas shtypni ENTER
. Në Debian, llogaria root për MariaDB është e lidhur ngushtë me mirëmbajtjen e automatizuar të sistemit, kështu që nuk duhet të ndryshoni metodat e konfiguruara të vërtetimit për atë llogari. Një veprim i tillë do të bënte të mundur që një përditësim i paketës të prishë sistemin e bazës së të dhënave duke hequr aksesin në llogarinë administrative. Më vonë, ne do të trajtojmë se si të konfiguroni opsionalisht një llogari shtesë administrative për aksesin e fjalëkalimit nëse vërtetimi i prizës nuk është i përshtatshëm për rastin tuaj të përdorimit.
Nga atje, mund të shtypni Y
dhe më pas ENTER
për të pranuar parazgjedhjet për të gjitha pyetjet e mëpasshme. Kjo do të heqë disa përdorues anonimë dhe bazën e të dhënave të testimit, do të çaktivizojë hyrjet në distancë root dhe do të ngarkojë këto rregulla të reja në mënyrë që MariaDB të respektojë menjëherë ndryshimet që keni bërë.
Hapi 3 - (Opsionale) Rregullimi i vërtetimit dhe privilegjeve të përdoruesit
Në sistemet Debian që ekzekutojnë MariaDB 10.3, përdoruesi root MariaDB është caktuar të vërtetojë duke përdorur shtojcën unix_socket
si parazgjedhje dhe jo me një fjalëkalim. Kjo mundëson siguri dhe përdorshmëri më të madhe në shumë raste, por gjithashtu mund t'i komplikojë gjërat kur ju duhet të lejoni të drejtat administrative të një programi të jashtëm (p.sh., phpMyAdmin).
Për shkak se serveri përdor llogarinë root për detyra si rrotullimi i regjistrave dhe fillimi dhe ndalimi i serverit, është mirë të mos ndryshoni detajet e vërtetimit të llogarisë root. Ndryshimi i kredencialeve në skedarin e konfigurimit /etc/mysql/debian.cnf
mund të funksionojë fillimisht, por përditësimet e paketës mund t'i mbishkruajnë këto ndryshime. Në vend të modifikimit të llogarisë root, mirëmbajtësit e paketës rekomandojnë krijimin e një llogarie të veçantë administrative për qasje të bazuar në fjalëkalim.
Për të demonstruar këtë proces, ne do të krijojmë një llogari të re të quajtur admin
me të njëjtat aftësi si llogaria root, por e konfiguruar për vërtetimin e fjalëkalimit. Për ta bërë këtë, hapni kërkesën MariaDB nga terminali juaj:
- sudo mysql
Tani, krijoni një përdorues të ri me privilegje root dhe akses të bazuar në fjalëkalim. Ndryshoni emrin e përdoruesit dhe fjalëkalimin që të përputhet me preferencat tuaja:
- GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
Fshini privilegjet për t'u siguruar që ato të ruhen dhe të disponohen në sesionin aktual:
- FLUSH PRIVILEGES;
Pas kësaj, dilni nga guaska MariaDB:
- exit
OutputBye
Tjetra, le të testojmë instalimin MariaDB.
Hapi 4 - Testimi i MariaDB
Kur instalohet nga depot e paracaktuara, MariaDB duhet të fillojë të funksionojë automatikisht. Për ta testuar këtë, kontrolloni statusin e tij:
- sudo systemctl status mariadb
Do të merrni dalje që është e ngjashme me sa vijon:
Output● mariadb.service - MariaDB 10.3.31 database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset:
Active: active (running) since Mon 2022-03-14 18:33:32 UTC; 2min 2s ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
Main PID: 3229 (mysqld)
Status: "Taking your SQL requests now..."
Tasks: 31 (limit: 4915)
Memory: 74.4M
CGroup: /system.slice/mariadb.service
└─3229 /usr/sbin/mysqld
Mar 14 18:33:32 mariadb /etc/mysql/debian-start[3267]: performance_schema
Mar 14 18:33:32 mariadb /etc/mysql/debian-start[3267]: Phase 6/7: Checking and u
Mar 14 18:33:32 mariadb /etc/mysql/debian-start[3267]: Running 'mysqlcheck' with
Mar 14 18:33:32 mariadb /etc/mysql/debian-start[3267]: # Connecting to localhost
Mar 14 18:33:32 mariadb /etc/mysql/debian-start[3267]: # Disconnecting from loca
Mar 14 18:33:32 mariadb /etc/mysql/debian-start[3267]: Processing databases
Mar 14 18:33:32 mariadb /etc/mysql/debian-start[3267]: information_schema
Mar 14 18:33:32 mariadb /etc/mysql/debian-start[3267]: performance_schema
Mar 14 18:33:32 mariadb /etc/mysql/debian-start[3267]: Phase 7/7: Running 'FLUSH
Mar 14 18:33:32 mariadb /etc/mysql/debian-start[3267]: OK
Nëse MariaDB nuk po funksionon, mund ta nisni me komandën sudo systemctl start mariadb
.
Për një kontroll shtesë, mund të provoni të lidheni me bazën e të dhënave duke përdorur mjetin mysqladmin
, i cili është një klient që ju lejon të ekzekutoni komandat administrative. Për shembull, kjo komandë thotë që të lidheni me MariaDB si root dhe të ktheni versionin duke përdorur folenë Unix:
- sudo mysqladmin version
Prodhimi juaj duhet të jetë i ngjashëm me sa vijon:
Outputmysqladmin Ver 9.1 Distrib 10.3.31-MariaDB, for debian-linux-gnu on x86_64
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Server version 10.3.31-MariaDB-0+deb10u1
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 3 min 6 sec
Threads: 6 Questions: 473 Slow queries: 0 Opens: 175 Flush tables: 1 Open tables: 31 Queries per second avg: 2.543
Nëse keni konfiguruar një përdorues të veçantë administrativ me vërtetimin e fjalëkalimit, mund të kryeni të njëjtin veprim duke ekzekutuar komandën e mëposhtme:
- mysqladmin -u admin -p version
OutputVer 9.1 Distrib 10.3.31-MariaDB, for debian-linux-gnu on x86_64
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Server version 10.3.31-MariaDB-0+deb10u1
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 7 min 11 sec
Threads: 6 Questions: 474 Slow queries: 0 Opens: 175 Flush tables: 1 Open tables: 31 Queries per second avg: 1.099
Ky dalje do të thotë që MariaDB është në funksion dhe se përdoruesi juaj është në gjendje të vërtetojë me sukses.
konkluzioni
Në këtë udhëzues, ju keni instaluar MariaDB për të vepruar si një server SQL. Gjatë procesit të instalimit, keni siguruar edhe serverin. Opsionale, keni krijuar gjithashtu një përdorues të veçantë për të siguruar qasje administrative në MariaDB përmes përditësimeve të paketave.
Tani që keni një server MariaDB funksional dhe të sigurt, këtu janë disa shembuj të hapave të ardhshëm që mund të ndërmerrni për të punuar me serverin:
- Importoni dhe eksportoni bazat e të dhënave
Ju gjithashtu mund të inkorporoni MariaDB në një pirg më të madh aplikacionesh:
- Si të instaloni Linux, Nginx, MariaDB, PHP (stekë LEMP) në Debian 10