SQL pasaule, kā zina ikviens izstrādātājs, nāk ar neizbēgamiem uzdevumiem saistībā ar privilēģijām un atļaujām. Viens no šādiem izplatītiem uzdevumiem ir visu atļauju vai privilēģiju piešķiršana noteiktam MySQL lietotājam, bieži vien “saknei”. Šī darbība ne tikai ietekmē drošību, bet arī nosaka uzdevumus, ko lietotājs var veikt datu bāzē. Iekļautas pamatdarbības, citu privilēģiju maiņa un administrēšanas uzdevumi. Daudzas reizes šāda darbība ir nepieciešama vietējās iestatīšanas laikā vai testēšanas nolūkos.
[Grant all privileges on *.* to 'root'@' ' identified by '' ;]
Šis vienīgais MySQL paziņojums ir viena no atbildēm uz mūsu problēmu. Bet izjauksim to, lai labāk izprastu tā sekas.
MySQL paziņojuma interpretācija
Lai pilnībā izprastu šī norādījuma darbību, ir svarīgi nedaudz izprast SQL sintakse. GRANT ir SQL komanda, kas piešķir noteiktas privilēģijas MySQL lietotāju kontiem. Apzīmējums *.* būtībā norāda MySQL serverim piešķirt atļaujas visām datubāzēm un visām tabulām šajās datubāzēs.
[ti, * = visas datu bāzes, .* = visas tabulas šajās datu bāzēs].
Termins “root”@” apzīmē lietotāju un resursdatoru, kam šīs privilēģijas ir jāpiešķir. Šeit “root” ir lietotājs. Tukšās pēdiņas ir jāaizpilda ar resursdatora nosaukumu.
Komanda beidzas ar terminu ” IDENTIFIED BY” , kas tiek izmantots, lai iestatītu/atjauninātu dotā lietotāja paroli.
MySQL paziņojuma lietošana soli pa solim
Soli pa solim ieviešana vienkāršos procesu:
- Pirms turpināt, ir jāpārliecinās, ka viņiem ir MySQL servera administratora privilēģijas GRANT komanda to prasa.
- Pirmkārt, ir jāpiekļūst MySQL komandrindas klientam vai MySQL Shell. Tas parasti prasīs root lietotāja paroli.
- Pēc pieteikšanās ierakstiet komandu "GRANT" no augšas, pēc tam aizstājot tukšās pēdiņas IDENTIFICĒJA ar vēlamo root paroli.
- Kad esat pārliecinājies, ka nav sintakses kļūdu, nospiediet taustiņu Enter.
- Visbeidzot, vienmēr atcerieties atkārtoti ielādēt visas privilēģijas, izmantojot Šķidruma privilēģijas; komandu, tāpēc izmaiņas stājas spēkā.
Attiecīgās SQL bibliotēkas un funkcijas
Runājot par bibliotēkām un funkcijām, kas saistītas ar privilēģijām un atļaujām, MySQL Connector/Python un mysql-connector-python bibliotēkas tiek plaši izmantotas, lai savienotu MySQL datubāzes no Python. Izmantojot tās, jūs varat mijiedarboties ar MySQL no Python, veikt CRUD darbības vai izsaukt procedūras.
Atcerieties, ka visiem izstrādātājiem svarīga ir spēcīga izpratne par SQL, jo īpaši attiecībā uz atļaujām un privilēģijām. Pirms pilnīgas piekļuves piešķiršanas jebkuram lietotājam jums rūpīgi jāpārbauda šādas darbības nepieciešamība un jāizprot sekas. Vienmēr lietojiet šādas komandas saprātīgi!
