logo

MySQL Skapa användare

MySQL-användaren är en post i ANVÄNDARE tabell för MySQL-servern som innehåller inloggningsinformation, kontobehörigheter och värdinformation för MySQL-kontot. Det är viktigt att skapa en användare i MySQL för att komma åt och hantera databaserna.

MySQL Create User-satsen låter oss skapa ett nytt användarkonto i databasservern. Den tillhandahåller egenskaper för autentisering, SSL/TLS, resursgräns, roll och lösenordshantering för de nya kontona. Det gör det också möjligt för oss att kontrollera de konton som initialt ska låsas eller låsas upp.

Om du vill använda Skapa användare krävs det att du har en global privilegiet Skapa användaruttalande eller FÖRA IN behörighet för MySQL-systemschemat. När du skapar en användare som redan finns ger det ett felmeddelande. Men om du använder, OM INTE FINNS satsen ger satsen en varning för varje namngiven användare som redan finns istället för ett felmeddelande.

Varför krävde användare i MySQL-server?

När MySQL-serverinstallationen är klar har den en ROT användarkonto endast för att komma åt och hantera databaserna. Men ibland vill du ge databasen åtkomst till andra utan att ge dem full kontroll. I så fall kommer du att skapa en icke-root-användare och ge dem specifika privilegier för att komma åt och ändra databasen.

Syntax

Följande syntax används för att skapa en användare i databasservern.

 CREATE USER [IF NOT EXISTS] account_name IDENTIFIED BY 'password'; 

I ovanstående syntax är kontonamn har två delar en är den Användarnamn , och en annan är värdnamn , som är åtskilda av @ symbol. Här är användarnamnet namnet på användaren och värdnamnet är namnet på värden från vilken användaren kan ansluta till databasservern.

 username@hostname 

Värdnamnet är valfritt. Om du inte har angett värdnamnet kan användaren ansluta från vilken värd som helst på servern. Användarkontonamnet utan värdnamn kan skrivas som:

 username@% 

Obs: Skapa användare skapar en ny användare med full åtkomst. Så om du vill ge privilegier till användaren krävs det att du använder GRANT-satsen.

MySQL CREATE USER Exempel

Följande är stegen som krävs för att skapa en ny användare i MySQL-serverdatabasen.

Steg 1: Öppna MySQL-servern genom att använda mysql klientverktyg .

Steg 2: Ange lösenordet för kontot och tryck på Enter.

 Enter Password: ******** 

Steg 3: Utför följande kommando för att visa alla användare i den aktuella MySQL-servern.

 mysql> select user from mysql.user; 

Vi kommer att få utdata enligt nedan:

MySQL Skapa användare

Steg 4: Skapa en ny användare med följande kommando.

 mysql> create user peter@localhost identified by 'jtp12345'; 

Kör nu kommandot för att visa alla användare igen.

MySQL Skapa användare

I ovanstående utgång kan vi se att användaren peter har skapats framgångsrikt.

Steg 5: Nu kommer vi att använda IF NOT EXISTS-satsen med CREATE USER-satsen.

 mysql> CREATE USER IF NOT EXISTS adam@localhost IDENTIFIED BY 'jtp123456'; 

Ge privilegier till den nya MySQL-användaren

MySQL-server ger flera typer av privilegier till ett nytt användarkonto. Några av de mest använda privilegierna ges nedan:

    ALLA PRIVILEGIER:Det tillåter alla privilegier till ett nytt användarkonto.SKAPA:Det gör det möjligt för användarkontot att skapa databaser och tabeller.SLÄPPA:Det gör det möjligt för användarkontot att släppa databaser och tabeller.RADERA:Det gör det möjligt för användarkontot att ta bort rader från en specifik tabell.FÖRA IN:Det gör det möjligt för användarkontot att infoga rader i en specifik tabell.VÄLJ:Det gör det möjligt för användarkontot att läsa en databas.UPPDATERING:Det gör det möjligt för användarkontot att uppdatera tabellrader.

Om du vill ge alla privilegier till en nyskapad användare, kör följande kommando.

 mysql> GRANT ALL PRIVILEGES ON * . * TO peter@localhost; 

Om du vill ge specifika privilegier till en nyskapad användare, kör följande kommando.

 mysql> GRANT CREATE, SELECT, INSERT ON * . * TO peter@localhost; 

Ibland vill man spola alla privilegier för ett användarkonto för ändringar sker omedelbart, skriv följande kommando.

 FLUSH PRIVILEGES; 

Om du vill se befintliga behörigheter för användaren, kör följande kommando.

 mysql> SHOW GRANTS for username;