De MySQL-gebruiker is een record in de GEBRUIKER tabel van de MySQL-server die de aanmeldingsgegevens, accountrechten en de hostinformatie voor het MySQL-account bevat. Het is essentieel om een gebruiker in MySQL aan te maken voor toegang tot en beheer van de databases.
Met de MySQL Create User-instructie kunnen we een nieuw gebruikersaccount aanmaken op de databaseserver. Het biedt eigenschappen voor authenticatie, SSL/TLS, resourcelimiet, rol en wachtwoordbeheer voor de nieuwe accounts. Het stelt ons ook in staat de accounts te controleren die in eerste instantie moeten worden vergrendeld of ontgrendeld.
Als u Gebruiker aanmaken wilt gebruiken, is het vereist dat u over een globaal privilege van Create User-instructie of de INVOEGEN privilege voor het MySQL-systeemschema. Wanneer u een gebruiker aanmaakt die al bestaat, geeft deze een foutmelding. Maar als je gebruik maakt van ALS NIET BESTAAT -clausule geeft de instructie een waarschuwing voor elke benoemde gebruiker die al bestaat in plaats van een foutmelding.
Waarom hadden gebruikers een MySQL-server nodig?
Wanneer de installatie van de MySQL-server is voltooid, heeft deze een WORTEL gebruikersaccount alleen voor toegang tot en beheer van de databases. Maar soms wilt u anderen toegang geven tot de database zonder hen volledige controle te geven. In dat geval maakt u een niet-rootgebruiker aan en verleent u deze specifieke rechten om de database te openen en te wijzigen.
Syntaxis
De volgende syntaxis wordt gebruikt om een gebruiker op de databaseserver aan te maken.
CREATE USER [IF NOT EXISTS] account_name IDENTIFIED BY 'password';
In de bovenstaande syntaxis is de accountnaam bestaat uit twee delen, één is de gebruikersnaam , en een andere is de hostnaam , die wordt gescheiden door @ symbool. Hier is de gebruikersnaam de naam van de gebruiker en de hostnaam de naam van de host waarmee de gebruiker verbinding kan maken met de databaseserver.
username@hostname
De hostnaam is optioneel. Als u de hostnaam niet heeft opgegeven, kan de gebruiker verbinding maken vanaf elke host op de server. De gebruikersaccountnaam zonder hostnaam kan worden geschreven als:
username@%
Let op: Met Create User (Gebruiker aanmaken) wordt een nieuwe gebruiker met volledige toegang aangemaakt. Als u dus rechten aan de gebruiker wilt geven, is het vereist om de GRANT-instructie te gebruiken.
MySQL CREATE GEBRUIKER Voorbeeld
Hieronder volgen de stappen die nodig zijn om een nieuwe gebruiker aan te maken in de MySQL-serverdatabase.
Stap 1: Open de MySQL-server met behulp van de mysql-clienttool .
Stap 2: Voer het wachtwoord voor het account in en druk op Enter.
Enter Password: ********
Stap 3: Voer de volgende opdracht uit om alle gebruikers op de huidige MySQL-server weer te geven.
mysql> select user from mysql.user;
We krijgen de uitvoer zoals hieronder:
Stap 4: Maak een nieuwe gebruiker aan met de volgende opdracht.
mysql> create user peter@localhost identified by 'jtp12345';
Voer nu de opdracht uit om alle gebruikers opnieuw te tonen.
In de bovenstaande uitvoer kunnen we zien dat de user Petrus is succesvol aangemaakt.
Stap 5: Nu zullen we de IF NOT EXISTS-clausule gebruiken met de CREATE USER-instructie.
mysql> CREATE USER IF NOT EXISTS adam@localhost IDENTIFIED BY 'jtp123456';
Verleen rechten aan de nieuwe MySQL-gebruiker
MySQL-server biedt meerdere soorten rechten voor een nieuw gebruikersaccount. Hieronder vindt u enkele van de meest gebruikte privileges:
Als u alle rechten aan een nieuw aangemaakte gebruiker wilt geven, voert u de volgende opdracht uit.
mysql> GRANT ALL PRIVILEGES ON * . * TO peter@localhost;
Als u specifieke rechten wilt geven aan een nieuw aangemaakte gebruiker, voert u de volgende opdracht uit.
mysql> GRANT CREATE, SELECT, INSERT ON * . * TO peter@localhost;
Soms wil je dat doorspoelen alle rechten van een gebruikersaccount voor wijzigingen onmiddellijk plaatsvinden, typt u de volgende opdracht.
FLUSH PRIVILEGES;
Als u de bestaande rechten voor de gebruiker wilt zien, voert u de volgende opdracht uit.
mysql> SHOW GRANTS for username;