Kaip įdiegti MySQL Ubuntu 20.04
MySQL yra viena iš populiariausių atviro kodo duomenų bazių. Ji žinoma dėl savo našumo, patikimumo ir mastelio, todėl naudojama įvairiose srityse – nuo mažų žiniatinklio prieglobos sistemų iki didelių įmonių. Šiame straipsnyje paaiškinsime, kaip žingsnis po žingsnio įdiegti MySQL Ubuntu 20.04, kad galėtumėte sukurti patikimą duomenų bazių valdymo sistemą.
Kokie yra reikalavimai MySQL įdiegimui Ubuntu 20.04?
MySQL įdiegimui Ubuntu 20.04 sistemoje keliamų reikalavimų yra palyginti nedaug, ir jie turėtų būti įvykdyti daugumoje šiuolaikinių stalinių kompiuterių ir serverių sistemų. Svarbu atkreipti dėmesį, kad reikalavimai gali skirtis priklausomai nuo numatomo duomenų bazės naudojimo tikslo ir apimties. Pavyzdžiui, jei norite naudoti intensyvią programą, kuri naudoja dideles duomenų bazes ar sudėtingus užklausimus, geram veikimui užtikrinti reikės daugiau RAM ir apdorojimo galios. Taip pat turėtumėte turėti pakankamai vietos kietajame diske, kad ateityje galėtumėte plėstis ir pridėti daugiau duomenų bazių.
Turėtumėte patikrinti savo tinklo konfigūraciją ir ugniasienės nustatymus, kad užtikrintumėte sklandų ryšį tarp MySQL serverio ir klientų. MySQL serveris turėtų turėti statinį IP adresą, kad būtų išvengta bet kokių ryšio problemų.
Čia pateikiami minimalūs reikalavimai MySQL įdiegimui:
- Procesorius (CPU): x86-64 architektūra, min. 1 GHz (dviejų branduolių)
- RAM: min. 1 GB
- Operacinė sistema: Ubuntu 20.04, vartotojo paskyra su sudo ir root teisėmis
- Ugniasienė: atidarytas MySQL 3306 prievadas
- Kietojo disko vieta: mažiausiai 500 MB
- Interneto ryšys: reikalingas paketams atsisiųsti ir prisijungti prie MySQL serverio
Žingsnis po žingsnio vadovas, kaip įdiegti MySQL Ubuntu 20.04
MySQL galima įdiegti Ubuntu 20.04 naudojant paketų valdymo sistemą APT (Advanced Package Tool). Po įdiegimo reikia ją nustatyti ir konfigūruoti, tam reikės root slaptažodžio ir prieigos prie išorinių klientų. Toliau pateiksime išsamius nurodymus, kaip įdiegti MySQL Ubuntu 20.04.
1 žingsnis: Atnaujinkite paketų indeksą
Pirmiausia, patartina įsitikinti, kad jūsų paketų sąrašas yra atnaujintas. Tam galite naudoti šią komandą:
$ sudo apt updatebash2 žingsnis: įdiekite MySQL serverį
Toliau įdiekite MySQL serverio paketą naudodami APT:
$ sudo apt install mysql-serverbashNorėdami patikrinti, ar serveris veikia, galite jį paleisti rankiniu būdu naudodami komandą systemctl.
$ sudo systemctl start mysql.servicebash3 žingsnis: Konfigūruokite MySQL
MySQL iš karto po įdiegimo neatitiks rekomenduojamų saugumo standartų. Norėdami tai ištaisyti, naudokite MySQL siūlomą scenarijų, kad pakeistumėte nustatymus ir geriau apsaugotumėte serverį. Tai nustatys root slaptažodį, pašalins anonimiškus vartotojus ir apribos nuotolinę prieigą.
Turėsite imtis tam tikrų atsargumo priemonių, kad užtikrintumėte, jog scenarijus bus vykdomas teisingai. Programa norės pakeisti root paskyros slaptažodį, kuris Ubuntu sistemoje yra išjungtas pagal numatytuosius nustatymus. Norėdami išvengti klaidos, turėsite pakeisti root vartotojų autentiškumo patvirtinimo metodą.
Norėdami tai padaryti, paleiskite MySQL komandų eilutę:
$ sudo mysqlbashNaudokite komandą ALTER USER, kad nustatytumėte root slaptažodį:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';bashUždarykite MySQL komandų eilutę:
mysql> exitbashVykdykite saugumo scenarijų:
$ sudo mysql_secure_installationbashNorėdami patvirtinti root vartotojo tapatybę, įveskite šią komandą:
$ mysql -u root -pbashBaigus scenarijų, galite vėl pakeisti standartinį autentifikavimo metodą:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH auth_socket;bashTai leis jums vėl prisijungti naudodami komandą sudo mysql.
4 žingsnis: Nustatykite MySQL vartotojus
Įdiegus MySQL, sukuriama root vartotojo paskyra, turinti visas MySQL serverio teises ir visišką kontrolę duomenų bazėse, lentelėse ir vartotojų sąraše. Siekiant padidinti saugumą, reikėtų sukurti vartotoją su ribotomis teisėmis.
Norėdami tai padaryti, atidarykite MySQL komandų eilutę:
$ sudo mysqlbashJei kaip autentifikavimo metodą nustatėte slaptažodį, naudokite šią komandą:
$ mysql -u root -pbashDabar sukurkite naują MySQL vartotoją:
mysql> CREATE USER 'username'@'host' IDENTIFIED WITH authentication_plugin BY 'password';bashĮveskite savo vartotojo vardą vietoje „username“ ir savo serverio pavadinimą vietoje „host“. Jei naudojate Ubuntu lokaliai, įrašykite localhost. Išraiška „WITH authentication_plugin“ yra neprivaloma. Įskiepis „auth_socket“ turi stiprius saugumo nustatymus ir nereikalauja slaptažodžio prisijungimui.
Jei nenurodyta kitaip, MySQL autentifikavimui naudoja „caching_sha2_password“ įskiepį. Tačiau kai kurios PHP versijos nėra suderinamos su juo. Vietoj jo galite naudoti patikrintą ir patikimą įskiepį „mysql_native_password“:
mysql> CREATE USER 'username'@'host' IDENTIFIED WITH mysql_native_password BY 'password';bashArba naudokite funkciją „alter“ esamam vartotojui:
mysql> ALTER 'username'@'host' IDENTIFIED WITH mysql_native_password BY 'password';bash5 žingsnis: Priskirti privilegijas
Dabar atėjo laikas nustatyti, kokias teises turės naujas vartotojas. Sintaksė tam yra tokia:
mysql> GRANT PRIVILEGE ON database.table TO 'username'@'host';bashPrivilegijos atskiriamos kableliu. Norėdami suteikti visuotines privilegijas, pakeiskite „database.table“ žvaigždute „*“.
Šiame pavyzdyje suteikiame vartotojui leidimą kurti (CREATE), keisti (ALTER) ir trinti (DROP) duomenų bazes bei įterpti (INSERT), atrinkti (SELECT), atnaujinti (UPDATE) ir trinti (DELETE) duomenis lentelėje.
mysql> GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT on *.* TO 'user'@'host' WITH GRANT OPTION;bash„SU GRANT OPTION“ suteikia vartotojui leidimą suteikti savo privilegijas kitiems vartotojams.
Dabar ištuštinkite talpyklą naudodami komandą „FLUSH PRIVILEGES“:
mysql> FLUSH PRIVILEGES;bashPo to galite uždaryti MySQL komandų eilutę:
mysql> exitbashDabar galite prisijungti naudodami naują vartotojo vardą:
$ mysql -u username -pbash6 žingsnis: MySQL testavimas
Patikrinkite, ar MySQL veikia tinkamai, pavyzdžiui, naudojant sistemos tvarkyklę Systemd:
$ systemctl status mysql.servicebashArba galite prisijungti prie MySQL duomenų bazės. Ši komanda prisijungia prie MySQL ir rodo serverio versiją:
$ sudo mysqladmin -p -u username versionbash