Android

Kako stvoriti mysql korisničke račune i dodijeliti povlastice

Contain Yourself: An Intro to Docker and Containers by Nicola Kabar and Mano Marks

Contain Yourself: An Intro to Docker and Containers by Nicola Kabar and Mano Marks

Sadržaj:

Anonim

MySQL je najpopularniji sustav upravljanja relacijskim bazama otvorenog koda. MySQL poslužitelj omogućava nam stvaranje brojnih korisničkih računa i dodjeljivanje odgovarajućih povlastica tako da korisnici mogu pristupiti i upravljati bazama podataka.

Ovaj vodič opisuje kako stvoriti MySQL korisničke račune i dodijeliti povlastice.

Prije nego što počneš

Pretpostavljamo da na vašem sustavu već imate instaliran MySQL ili MariaDB poslužitelj.

Sve naredbe se izvršavaju unutar MySQL ljuske kao korijenski ili administrativni korisnik. Minimalne privilegije potrebne za stvaranje korisničkih računa i definiranje njihovih privilegija su CREATE USER i GRANT .

Za pristup MySQL školjci upišite sljedeću naredbu i po upisu unesite korisničku lozinku MySQL korijena:

mysql -u root -p

Izradite novi MySQL korisnički račun

Korisnički račun u MySQL sastoji se od dijelova korisničkog imena i imena hosta.

Za stvaranje novog korisničkog računa MySQL pokrenite sljedeću naredbu:

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'user_password'; Zamijenite newuser vrijednosti rezerviranog mjesta sa svojim novim namijenjenim korisničkim imenom, a vrijednost user_password korisničkom lozinkom.

U naredbi iznad dijela glavnog računala postavljen je localhost , što znači da će se korisnik moći povezati s MySQL serverom samo iz localhosta (tj. Iz sustava u kojem se pokreće MySQL Server).

Da biste odobrili pristup drugom domaćinu, promijenite dio imena hosta ( localhost ) s IP udaljenog uređaja. Na primjer, da odobrite pristup s računala s IP 10.8.0.5 pokrenuli biste:

CREATE USER 'newuser'@'10.8.0.5' IDENTIFIED BY 'user_password';

Da biste stvorili korisnika koji se može povezati s bilo kojeg domaćina, koristite znak '%' kao dio domaćina:

CREATE USER 'newuser'@'%' IDENTIFIED BY 'user_password';

Dodijelite privilegije na MySQL korisničkom računu

Postoji više vrsta privilegija koje se mogu dodijeliti korisničkom računu. Ovdje možete pronaći cijeli popis privilegija koje podržava MySQL.

Najčešće korištene povlastice su:

  • ALL PRIVILEGES - Dodjeljuje sve privilegije korisničkom računu. CREATE - Korisničkom računu dopušteno je stvaranje baza podataka i tablica. DROP - Korisničkom računu dopušteno je ispuštanje baza podataka i tablica. DELETE - Korisničkom računu dopušteno je brisanje redaka iz određene tablice. INSERT - Korisničkom računu dopušteno je umetanje redaka u određenu tablicu. SELECT - Korisničkom računu dopušteno je čitanje baze podataka. UPDATE - Korisničkom računu dopušteno je ažuriranje redaka tablica.

Da biste korisničkom računu dodijelili određene povlastice, možete upotrijebiti sljedeću sintaksu:

GRANT permission1, permission2 ON database_name.table_name TO 'database_user'@'localhost';

Evo nekoliko primjera:

  • Dodijelite sve privilegije korisničkom računu preko određene baze podataka:

    GRANT ALL PRIVILEGES ON database_name.* TO 'database_user'@'localhost';

    Dodijelite sve privilegije korisničkom računu u svim bazama podataka:

    GRANT ALL PRIVILEGES ON *.* TO 'database_user'@'localhost';

    Dodijelite sve privilegije korisničkom računu preko određene tablice iz baze podataka:

    GRANT ALL PRIVILEGES ON database_name.table_name TO 'database_user'@'localhost';

    Dodijelite više privilegija korisničkom računu preko određene baze podataka:

    GRANT SELECT, INSERT, DELETE ON database_name.* TO database_user@'localhost';

Prikaži privilegije korisničkog računa MySQL

Da biste pronašli privilegiju (a) dodijeljenu određenom MySQL korisničkom računu, upotrijebite izraz SHOW GRANTS :

SHOW GRANTS FOR 'database_user'@'localhost';

+---------------------------------------------------------------------------+ | Grants for database_user@localhost | +---------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'database_user'@'localhost' | | GRANT ALL PRIVILEGES ON `database_name`.* TO 'database_user'@'localhost' | +---------------------------------------------------------------------------+ 2 rows in set (0.00 sec)

Opozovite privilegije s MySQL korisničkog računa

Sintaksa za opoziv jedne ili više privilegija s korisničkog računa gotovo je identična kao kod davanja povlastica.

Na primjer, da biste opozvali sve privilegije s korisničkog računa preko određene baze podataka, koristite sljedeću naredbu:

REVOKE ALL PRIVILEGES ON database_name.* FROM 'database_user'@'localhost';

Uklonite postojeći MySQL korisnički račun

Za brisanje korisničkog računa MySQL koristite izraz DROP USER :

DROP USER 'user'@'localhost'

Gornja naredba uklonit će korisnički račun i njegove povlastice.

Zaključak

Ovaj udžbenik pokriva samo osnove, ali to bi trebao biti dobar početak za sve koji žele naučiti kako stvoriti nove MySQL korisničke račune i dodijeliti privilegije.

mysql mariadb