Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Windows 7, XP
  • Stvorite novog korisnika u MySQL-u i dajte dopuštenje MySQL bazi podataka.

Stvorite novog korisnika u MySQL-u i dajte dopuštenje MySQL bazi podataka.

Prilikom spajanja na MySQL poslužitelj, korisnik daje korisničko ime i lozinku, a poslužitelj provjerava je li klijent ovlašten za pristup poslužitelju i, ako je uspješan, dodjeljuje odgovarajuće privilegije korisniku. Podaci o korisničkim povlasticama pohranjeni su u baza sustava mysql.

Provjera korisnika se provodi pomoću tri polja korisničke tablice (host, korisnik i lozinka) mysql baze podataka. Poslužitelj uspostavlja vezu samo ako u tablici korisnika pronađe unos u kojem korisničko ime i lozinka odgovaraju unesenim vrijednostima.

Možete vidjeti kako su lozinke pohranjene u korisničkoj tablici pomoću sljedećih naredbi:

mysql>KORISTI mysql

mysql>SELECT lozinka OD korisnika;

Možete vidjeti sve tablice u mysql bazi podataka pokretanjem naredbe

mysql>prikaži tablice;

Nakon što je veza uspostavljena, poslužitelj započinje sesiju s korisnikom. Za svaki dolazni zahtjev poslužitelj provjerava ima li korisnik dovoljne privilegije za dovršenje zahtjeva. Informacije o privilegijama nalaze se u tablicama -- user, db, host, tables_priv ili columns_priv.

Popis privilegija je prikazan u nastavku:

MySQL poslužitelj čita sadržaj ovih tablica tijekom pokretanja i kad god promjene u privilegijama stupe na snagu.

Privilegije SELECT, INSERT, UPDATE i DELETE omogućuju vam izvođenje operacija na redovima u tablicama baze podataka. Privilegija indeksa omogućuje stvaranje ili uništavanje indeksa. Privilegija alter vam omogućuje korištenje naredbe alter table. Privilegije stvaranja i ispuštanja omogućuju vam stvaranje novih ili uništavanje postojećih baza podataka i tablica. GRANT privilegiju gram omogućuje vam da drugim korisnicima dodijelite privilegije koje imate.

Preostale privilegije koriste se za administriranje SQL poslužitelja. naredba za isključivanje isključuje poslužitelj.

Kada se MySQL poslužitelj pokrene, sve informacije o korisničkim privilegijama učitavaju se u memoriju i od tog trenutka privilegije stupaju na snagu.

Naredbe odobravanja i opoziva dopuštaju administratori sustava stvoriti MySQL korisnici te dodijeliti ili uskratiti prava korisnicima na četiri razine.

· Globalna razina.

Globalne privilegije primjenjuju se na sve baze podataka na navedeni poslužitelj. Ove su privilegije pohranjene u mysql tablica.korisnik.

· Razina baze podataka.

Privilegije baze podataka primjenjuju se na sve tablice u navedenoj bazi podataka. Ove privilegije pohranjene su u tablicama mysql.db i mysql.host.

· Razina stola.

Privilegije tablice primjenjuju se na sve stupce navedene tablice.

Ove privilegije pohranjene su u mysql tablici. tablice_priv.

· Razina stupca.

Privilegije stupaca primjenjuju se na pojedinačne stupce u navedenoj tablici. Ove privilegije pohranjene su u mysql tablici .columns_priv.

Naredba grant vam omogućuje dodavanje novih korisnika poslužitelja:

mysql> GRANT SELECT, INSERT ON taxi.* ZA Mike@localhost

IDENTIFICIRAN PO "tajno";

Ovom naredbom se korisniku Mikeu, koji se povezuje lokalno (localhost), korisniku Mikeu, koji se spaja lokalno (localhost), daje pravo na umetanje i odabir (na sve tablice - na sve tablice - to je označeno zvjezdicom), a prilikom spajanja na server korisnik mora navesti lozinku "tajna ". Lozinka je pohranjena na poslužitelju u šifriranom obliku.

mysql> DODIJELI SVE PRIVILEGIJE NA *.* Ann@"%"

->IDENTIFICIRANO PO "some_pass" S OPCIJAMA GRANT;

Ovdje Anna dobiva sva prava (sve privilegije) na sve tablice svih poslužiteljskih baza podataka (* . *), te se može povezati i lokalno i udaljeno preko mreže (to je označeno simbolom % nakon Anna@). Osim toga, Anna može prenijeti svoja prava na druge korisnike (s opcijom dodjele), tj. sama može izdati naredbu za dodjelu i kreirati nove korisnike sustava.

mysql> ODOBRITE UPOTREBU NA *.* TO dummy@localhost

IDENTIFICIRANO `lozinkom';

Lažni korisnik stvoren u ovom primjeru može se povezati s poslužiteljem, ali samo s lokalno računalo. Privilegija USAGE znači da korisnik nema sve druge privilegije. To može biti potrebno kada se osoba zapošljava, ali njezine odgovornosti još nisu definirane. Očekuje se da će privilegije vezane uz bazu podataka biti dodijeljene kasnije. Neće biti moguće kreirati korisnika s praznom lozinkom – sustav to ne dopušta iz sigurnosnih razloga.

Naredba REVOKE omogućuje administratoru opoziv korisničkih prava:

REVOKE SELECT (use_on) ON taxi.timetable FROM Mike @ localhost;

Korisnik Mike ne može vidjeti vrijednosti polja use_on u rasporedu.

Naredba set može postaviti razne opcije koji utječu na rad poslužitelja ili klijenta. Lozinka za root korisnika također se može postaviti pomoću ove naredbe:

mysql> POSTAVITE LOZINKU ZA root@localhost=LOZINKA("nova_lozinka") ;

Korisnici također mogu izravno raditi s tablicama dodjele privilegija:

mysql>KORISTI mysql;

Mysql> AŽURIRAJ korisnika SET Password=PASSWORD("nova_lozinka")

-> WHERE korisnik="root";

Nakon toga, trebali biste izdati naredbu koja prisiljava poslužitelj da ponovno pročita tablice privilegija - tada će one stupiti na snagu:

mysql> PRIVILEGIJE ISPIRANJA;

Ako je lozinka navedena pomoću naredbe grant. . .identificirano, nema potrebe za korištenjem funkcija lozinke(). Ova naredba neovisno šifrira lozinku, tako da lozinku treba navesti na jednostavan način tekstualni oblik, na primjer, ovako:

mysql> ODOBRITE UPOTREBU NA *.* TO jeffrey@"%" IDENTIFICIRAN PREMA "biscuit";

Poslužitelj uzima u obzir promjene napravljene u tablicama dodjele privilegija korištenjem naredbi dodjele, opoziva ili postavljanja lozinke čim se izvrše ove upute.

Ako ste zainteresirani za web development ili razvoj softvera općenito, vjerojatno ste čuli za baze podataka. Baze podataka su virtualna skladišta za podatke potrebne za izradu web aplikacija. Koriste se za pohranu korisničkih podataka, kao što su korisničko ime, lozinka, adresa e-pošte i drugo. Općenito, bilo koja vrsta informacija koja vam može zatrebati u budućnosti može se pohraniti u bazu podataka.

Naravno, podaci koje pohranjujete moraju biti organizirani. Ovdje na scenu stupaju sustavi za upravljanje bazama podataka. Ovi se sustavi koriste za rad s bazom podataka i omogućuju programerima da strukturiraju, pohranjuju, postavljaju upite i mijenjaju podatke.

MySQL je jedan takav sustav za upravljanje bazom podataka. Ovo je jedan od naj poznatih sustava, zahvaljujući jednostavnosti korištenja i podršci zajednice. Usput, njegova prevalencija privukla je čak i takve velike tvrtke poput Facebooka i Twittera, koji ga donekle koriste.

U ovom ćemo vodiču pregledati Osnove MySQL-a i naučite kako stvoriti MySQL korisnika. Također ćemo naučiti kako dodijeliti privilegije pristupa MySQL korisnicima. U ovom vodiču ćemo sve ovo raditi iz naredbenog retka.

Prije nego počnete, trebat će vam sljedeće:

  • MySQL instaliran na vašem računalu. Korisnički vodič o tome kako ga instalirati na .

Korak 1 – Stvorite MySQL korisnika i dodijelite neograničena prava pristupa

Nakon što počnete koristiti MySQL, dobit ćete korisničko ime i lozinku. Ove početne vjerodajnice daju vam privilegije 'root pristupa'. Korisnik s pravima root pristup imati puni pristup na sve baze podataka i tablice unutar tih baza podataka.

Ali često, morate omogućiti pristup bazi podataka za nekoga drugog bez davanja potpuna kontrola. Na primjer, tvrtke koje angažiraju programere za održavanje baza podataka, ali im ne žele dati mogućnost brisanja ili promjene povjerljive informacije, najvjerojatnije će im dodijeliti prava pristupa nekorijenskim korisnicima. U tom slučaju tvrtka može kontrolirati što njeni programeri smiju, a što ne mogu učiniti s podacima.

Stvaranje MySQL korisnika vrlo je jednostavno. Pokazat ćemo vam kako kreirati MySQL korisnika i kako mu dodijeliti prava pristupa bazi podataka. Ako korisnik nije root, tada mu nije praktično dati sva prava i ovo je dobar razlog da istražite kako možete dodijeliti prava pristupa korisnicima. Da biste stvorili novog korisnika, slijedite ove korake:

  1. Trčanje naredbeni redak a s njega MySQL server: mysql
  2. Pokrenite sljedeću naredbu: CREATE USER "non-root"@"localhost" IDENTIFICIED BY "123";

    U ovoj naredbi 'non-root' je ime koje dodjeljujemo novom korisniku. A '123' je njegova lozinka. Možete zamijeniti svojim vrijednostima unutar navodnika.

  3. Jednostavno stvaranje novog korisnika nije dovoljno. Morate mu dodijeliti prava pristupa. Da biste novostvorenom korisniku dodijelili neograničena prava pristupa bazi podataka, pokrenite sljedeću naredbu: GRANT ALL PRIVILEGES ON * . * TO "non-root"@"localhost";
  4. Kako bi promjene stupile na snagu, pokrenite naredbu ažuriranja: FLUSH PRIVILEGES;

Ovo je sve! Vaš Novi korisnik dobio ista prava pristupa bazi podataka kao root korisnik.

Korak 2 – Dodijelite posebna dopuštenja MySQL korisniku

Kao što je gore navedeno, nije baš pametno dati razinu root pristup ne-root korisnik. Češće nego ne, morat ćete pružiti različite razine pristup za različite korisnike. MySQL ovo čini lakim i brzim pokretanjem sljedeće naredbe:

GRANT [vrsta dozvole] ON [naziv baze podataka].[naziv tablice] TO ‘non-root’@"localhost’;

Jednostavno trebate zamijeniti vrijednost 'permission type' vrstom prava pristupa koja želite dodijeliti novom korisniku. Također morate navesti nazive baze podataka i tablica kojima želite pristupiti. Slično kao u prethodnom primjeru, 'non-root' je korisničko ime, odnosno možete ga zamijeniti onim koje vam je potrebno. MySQL ima nekoliko vrsta dozvola, neke od njih su opisane u nastavku:

  • STVORITI– Omogućuje korisnicima stvaranje baza podataka/tablica
  • IZABERI– Omogućuje korisnicima uzorkovanje podataka
  • UMETNUTI– Omogućuje korisnicima dodavanje novih zapisa u tablice
  • AŽURIRAJ– Omogućuje korisnicima promjenu postojeće evidencije u tablicama
  • IZBRISATI– Omogućuje korisnicima brisanje zapisa iz tablica
  • PAD– Omogućuje korisnicima brisanje zapisa u bazi podataka/tablicama

Za korištenje bilo koje od ovih opcija, jednostavno zamijenite [vrsta dozvole] potrebna riječ. Da biste dodijelili više vrsta dopuštenja, odvojite ih zarezima kao u sljedećoj naredbi. Na primjer, možemo dodijeliti privilegije poput STVORITI I IZABERI za našeg nekorijenskog MySQL korisnika ovom naredbom:

ODOBRITE IZRADU, ODABERITE NA *. * TO "non-root"@"localhost";

Naravno, možete se susresti sa situacijom u kojoj korisniku trebate oduzeti prethodno dodijeljena prava pristupa. To možete učiniti pokretanjem sljedeće naredbe:

REVOKE [vrsta dozvole] ON [naziv baze podataka].[naziv tablice] FROM 'non-root'@'localhost';

Na primjer, da biste opozvali sve privilegije nekom korisniku koji nije root morate učiniti:

PONIŠTI SVE PRIVILEGIJE NA *.* OD "non-root"@"localhost";

Konačno, možete izbrisati postojećeg korisnika pomoću naredbe:

DROP USER 'non-root'@'localhost';

Ne zaboravite da vam je potreban root pristup za pokretanje bilo koje od ovih naredbi. Također, svakako slijedite PRIVILEGIJE ISPIRANJA nakon bilo kakve promjene prava pristupa.

Zaključak

U ovom vodiču naučili smo neke osnove o MySQL dopuštenjima i kako stvoriti MySQL korisnika. Posebno:

  • Kreirajte novog korisnika i dodijelite mu sva prava pristupa
  • Dodjela posebnih prava pristupa korisnicima, kao i njihovo oduzimanje i brisanje korisnika

Dodjeljivanje dopuštenja može se činiti teškim pri razvoju nove web aplikacije, ali je vrlo važne akcije za upravljanje i održavanje baze podataka. Skoro sve moderne aplikacije izgrađeni su na bazama podataka, stoga je vrlo važno da programer zna kako dodijeliti/ukloniti prava pristupa bazama podataka u MySQL-u.

Napokon sam došao do baza podataka, danas ćemo se nastaviti baviti MySQL poslužiteljem. Kao što možda pretpostavljate, govorit ćemo o MySQL korisnicima i kreiranju korisničkog računa MySQL poslužitelji. Dopustite mi da vas podsjetim da je prvi korisnik stvoren kada automatska instalacija MySQL poslužitelji. Unesite lozinku za MySQL korisnički račun pod nazivom root. Ali ponekad postoje situacije kada root korisnik ima previše prava, na primjer: neki korisnici bi trebali imati samo pravo pregledavanja podataka, ali ne i prava uređivanja.

Prava, MySQL korisnici mogu imati vrlo različite, te o pravima pristupa bazama podataka MySQL podaci govorit ćemo u posebnoj publikaciji. Naš zadatak je otkriti kako se spojiti na poslužitelj koji ima specifičan TCP priključak. Zapravo, stvaranje novog MySQL korisnika nije tako teško, ali postoje neke suptilnosti kojih biste trebali biti svjesni kako ne biste naišli na probleme prilikom administriranja MySQL baza podataka.

Kako pristupiti MySQL poslužitelju

Kada ste kreirali svog prvog MySQL korisnika, njegovo ime je bilo root, a sami ste smislili lozinku za ovaj račun. Root korisnik je najvažniji korisnik MySQL poslužitelja, glavni administrator s neograničenim pravima pristupa, ovaj korisnik može kreirati nove račune za pristup MySQL bazama podataka, drugim riječima: glavni administrator može kreirati MySQL korisnika s manjim pravima od sebe.

Prije, kako stvoriti MySQL korisnika, ne zaboravi . Za pristup MySQL poslužitelju morate uspostaviti vezu, za to morate unijeti prijavu i lozinku. Ako je poslužitelj baze podataka udaljen, tada ćete morati unijeti i naziv glavnog računala na kojem je instaliran; ako ne navedete ime glavnog računala, veza će se uspostaviti s lokalni poslužitelj.

Možete uspostaviti vezu s lokalnim poslužiteljem pomoću sljedeće naredbe u naredbenom retku operacijski sustav:

mysql –h lokalni host –p –u korijen

mysql –h lokalni host –p –u korijen

Potvrdite naredbu pritiskom na Unesite tipke, nakon čega će MySQL tražiti da unesete lozinku za ovog korisnika, unesite je i pritisnite Enter. Napomena: ako radite u operacijskoj sali Windows sustav 7, tada se naredbeni redak mora pokrenuti kao administrator. Ponekad se MySQL poslužitelj možda neće pronaći; o rješavanju ovog problema govorit ćemo u drugom članku.

Pozabavimo se ovom ekipom. Ova naredba pokreće konzolu MySQL poslužitelja, ljusku koja vam omogućuje rad s bazama podataka; operacije koje se mogu izvesti s podacima mogu biti vrlo različite, sve ovisi o pravima pristupa MySQL korisnika, u u ovom slučaju možete izvoditi bilo koje operacije sa svim bazama podataka, budući da se prijava vrši iz korijenski naziv MySQL korisnik. Napomena početnicima u UNIX operativnim sustavima: root MySQL korisnik poslužitelj i root korisnik operativnog sustava su dva drugačiji korisnik. Korisničko ime MySQL poslužitelja piše se nakon konstrukcije “-u”.

Korisnička lozinka MySQL poslužitelja piše se nakon konstrukcije “-p”. Ne morate ga unijeti odmah, tada ćete ga morati unijeti nakon što pritisnete Enter. Nakon “-h” konstrukcije ispisuje se naziv hosta na kojem se nalazi MySQL poslužitelj, u ovom slučaju izričito ukazujemo da se veza mora uspostaviti s lokalnim poslužiteljem baze podataka, to nije potrebno učiniti.

Nakon što je dovršen ovu naredbu, morat ćete unijeti svoju MySQL korisničku lozinku. Ako MySQL korisnik nema lozinku, tada nakon izvršenja naredbe treba kliknuti Povratni ključ. Nadam se da smo shvatili kako dobiti pristup MySQL poslužitelju i da se ovdje neće pojaviti nikakva pitanja.

Kako vidjeti informacije o postojećim bazama podataka MySQL poslužitelja

Bilješka: koristiti naredbu- nije SQL upit, tako da ne morate stavljati točku i zarez na kraju ove naredbe ili je možete staviti, rezultat će biti isti: počet ćete raditi s navedenom bazom podataka MySQL poslužitelja. Database_name je naziv baze podataka s kojom će MySQL korisnik raditi, može biti bilo koji od rezultirajuće liste koju je proizvela naredba prikazati baze podataka. Mislim da je ovo sve što trebate znati da biste dalje razumjeli kako stvoriti MySQL korisnika.

Kako stvoriti MySQL korisnika. GRANT tim.

Dakle, prijeđimo na pitanje: kako stvoriti MySQL korisnika. Novi Račun MySQL korisnik kreira se naredbom GRANT. Korištenje naredbe GRANT, ne samo MySQL korisnici poslužitelj, ali također dodjeljuje prava pristupa i privilegije MySQL korisnicima. Svi MySQL korisnici podijeljeni su u dvije kategorije, jedna je mala, a druga velika:

  1. Root MySQL korisnik. Sposoban učiniti sve, ovo je glavni administrator MySQL poslužitelja, često root prava nepotrebno, s tim pravima možete sebi naškoditi.
  2. Korisnici MySQL-a koje je izradio root. Ovi korisnici MySQL poslužitelja imaju različita prava, prava dodjeljuje root korisnik pomoću SQL GRANT upita.

Dakle, shvatimo kako stvoriti MySQL korisnika, u slučaju da već niste zaboravili: MySQL korisnici se stvaraju pomoću GRANT upita:

GRANT priv_type [(column_list)] [, priv_type [(column_list)] ...] ON (tbl_name | * | *.* | db_name.*) TO user_name [, user_name ...]

GRANT priv_type [ (column_list ) ] [ , priv_type [ (column_list ) ]. . . ]

UKLJUČENO (tbl_name | * | *. * | db_name. *)

DO user_name [ IDENTIFICIRANO PO "password" ]

[ , korisničko_ime [ IDENTIFICIRANO "lozinkom" ] . . . ]

[S OPCIJAMA GRANT-a]

Primjer pokazuje opću sintaksu naredbe GRANT, vrlo je jednostavna, ali možete kreirati MySQL korisnike s različitim privilegijama. Da vidimo što MySQL korisnici može se izraditi pomoću ove naredbe koristeći određeni primjer.

Stvorit ćemo novog MySQL korisnika. Na mom poslužitelju postoji jedan koji se zove mydb, možete kreirati vlastitu bazu podataka s imenom koje vam je potrebno. Vrijedno je napomenuti da čak i ako MySQL korisnik već postoji, i dalje će mu morati biti dodijeljene određene privilegije s naredbom GRANT. Dakle, stvorimo novog korisnika koji može izvoditi bilo koje radnje s mydb bazom podataka MySQL poslužitelja. Navest ću neke ulazne podatke. MySQL korisničko ime: "newusermysql", MySQL korisnička lozinka: "userpassword". Host na kojem je poslužitelj instaliran: localhost. Akcije koje novi korisnik može izvesti: sve radnje s bazom podataka mydb. GRANT zahtjev za stvaranje MySQL korisnika s navedenim pravima:

TO "newusermysql" @ "localhost" IDENTIFICIRAN PO "userpassword" ;

Točka-zarez na kraju naredbe je obavezan jer je GRANT SQL upit. Pogledajmo naredbu za stvaranje MySQL korisnika u dijelovima. IDENTIFICIRAN PO "userpassword": Postavite lozinku za MySQL korisnika kao "userpassword". "newusermysql"@"localhost": navedite host na koji će biti povezan korisnik pod imenom "newusermysql". Naredba GRANT može se koristiti samo root korisnik MySQL. Izjava ALL ON dodjeljuje sva dopuštenja newusermysql korisniku na mydb bazi podataka.

Napomena: njime upravlja MySQL poslužitelj, dakle Korisnici WordPressa može se kreirati ručno ispunjavanjem odgovarajućih polja i davanjem privilegija, s druge strane: WordPress je CMS koji olakšava život webmastera i pruža GUI za stvaranje korisnika.

Mislim da sam detaljno obradio problem kako stvoriti MySQL korisnika, sada možete kreirati nove korisnike, govorit ćemo o privilegijama MySQL korisnika u jednoj od sljedećih publikacija, ako još uvijek imate pitanja o ovoj temi, postavite ih u komentarima ako mislite da vam je članak pomogao i želite za pomoć resursu – koristite blok društvene tipke na ovoj stranici, bit ću vam jako zahvalan! Hvala na pozornosti!

Najbolji članci na temu