Android

Hoe mysql-gebruikersaccounts te maken en rechten toe te kennen

Hoe MySQL te installeren op Windows 10

Hoe MySQL te installeren op Windows 10

Inhoudsopgave:

Anonim

MySQL is het populairste open-source relationele databasebeheersysteem. Met de MySQL-server kunnen we tal van gebruikersaccounts maken en de juiste rechten verlenen, zodat gebruikers toegang hebben tot databases en deze kunnen beheren.

In deze zelfstudie wordt beschreven hoe u MySQL-gebruikersaccounts kunt maken en rechten kunt verlenen.

Voordat je begint

We gaan ervan uit dat u MySQL of MariaDB-server al op uw systeem heeft geïnstalleerd.

Alle opdrachten worden binnen de MySQL-shell uitgevoerd als root- of beheerder. De minimale rechten die vereist zijn om gebruikersaccounts te maken en hun rechten te definiëren, zijn CREATE USER en GRANT .

Om toegang te krijgen tot de MySQL-shell typt u de volgende opdracht en voert u uw MySQL-rootgebruikerswachtwoord in wanneer daarom wordt gevraagd:

mysql -u root -p

Maak een nieuw MySQL-gebruikersaccount

Een gebruikersaccount in MySQL bestaat uit een gebruikersnaam en een hostnaam.

Voer de volgende opdracht uit om een ​​nieuw MySQL-gebruikersaccount te maken:

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'user_password'; Vervang de placeholderwaarde newuser door uw beoogde nieuwe gebruikersnaam en placeholderwaarde user_password door het gebruikerswachtwoord.

In de bovenstaande opdracht is het hostnaamgedeelte ingesteld op localhost , wat betekent dat de gebruiker alleen verbinding kan maken met de MySQL-server vanaf de localhost (dwz vanaf het systeem waarop MySQL Server wordt uitgevoerd).

Als u toegang wilt verlenen vanaf een andere host, wijzigt u het hostnaamgedeelte ( localhost ) met het IP-adres van de externe machine. Als u bijvoorbeeld toegang wilt verlenen vanaf een computer met IP 10.8.0.5 , zou u het volgende uitvoeren:

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

Om een ​​gebruiker te maken die vanaf elke host verbinding kan maken, gebruikt u het jokerteken '%' als hostonderdeel:

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

Bevoegdheden verlenen aan een MySQL-gebruikersaccount

Er zijn meerdere soorten rechten die aan een gebruikersaccount kunnen worden verleend. Hier vindt u een volledige lijst met rechten die door MySQL worden ondersteund.

De meest gebruikte rechten zijn:

  • ALL PRIVILEGES - verleent alle rechten aan een gebruikersaccount. CREATE - Het gebruikersaccount mag databases en tabellen maken. DROP - Het gebruikersaccount mag databases en tabellen laten vallen. DELETE - Het gebruikersaccount mag rijen uit een specifieke tabel verwijderen. INSERT - Het gebruikersaccount mag rijen in een specifieke tabel invoegen. SELECT - Het gebruikersaccount mag een database lezen. UPDATE - Het gebruikersaccount mag tabelrijen bijwerken.

Om specifieke gebruikersrechten toe te kennen, kunt u de volgende syntaxis gebruiken:

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

Hier zijn enkele voorbeelden:

  • Maak gebruik van alle rechten voor een gebruikersaccount voor een specifieke database:

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

    Grand alle privileges voor een gebruikersaccount op alle databases:

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

    Maak gebruik van alle rechten voor een gebruikersaccount voor een specifieke tabel uit een database:

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

    Meerdere rechten verlenen aan een gebruikersaccount voor een specifieke database:

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

MySQL-gebruikersaccountrechten weergeven

Gebruik de SHOW GRANTS instructie om de privileges te vinden die aan een specifiek MySQL-gebruikersaccount zijn verleend:

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)

Bevoegdheden van een MySQL-gebruikersaccount intrekken

De syntaxis om een ​​of meer rechten van een gebruikersaccount in te trekken is bijna identiek als bij het verlenen van rechten.

Als u bijvoorbeeld alle rechten van een gebruikersaccount voor een specifieke database wilt intrekken, gebruikt u de volgende opdracht:

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

Verwijder een bestaand MySQL-gebruikersaccount

Gebruik de instructie DROP USER om een ​​MySQL-gebruikersaccount te verwijderen:

DROP USER 'user'@'localhost'

Met de bovenstaande opdracht worden het gebruikersaccount en de bijbehorende rechten verwijderd.

Conclusie

Deze tutorial behandelt alleen de basis, maar het zou een goed begin moeten zijn voor iedereen die wil leren hoe nieuwe MySQL-gebruikersaccounts te maken en privileges te verlenen.

mysql mariadb