Android

Hur man skapar mysql-användarkonton och ger behörigheter

Class #3.2 : MYSQL Database DemoHow to create database, tables and run queries.

Class #3.2 : MYSQL Database DemoHow to create database, tables and run queries.

Innehållsförteckning:

Anonim

MySQL är det mest populära databashanteringssystemet med öppna källor. MySQL-server låter oss skapa flera användarkonton och bevilja lämpliga behörigheter så att användare kan komma åt och hantera databaser.

Denna handledning beskriver hur du skapar MySQL-användarkonton och beviljar behörigheter.

Innan du börjar

Vi antar att du redan har MySQL eller MariaDB-server installerat på ditt system.

Alla kommandon körs i MySQL-skalet som root- eller administrationsanvändare. Minsta behörigheter som krävs för att skapa användarkonton och definiera deras behörigheter är CREATE USER and GRANT .

För att komma åt MySQL-skalet skriver du följande kommando och anger ditt MySQL-root-användarlösenord när du uppmanas:

mysql -u root -p

Skapa ett nytt MySQL-användarkonto

Ett användarkonto i MySQL består av ett användarnamn och värdnamnsdelar.

För att skapa ett nytt MySQL-användarkonto, kör följande kommando:

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'user_password'; Byt ut nytt användarnamnet för platshållare med ditt avsedda nya användarnamn och platshållarens värde user_password med användarlösenordet.

I kommandot ovan är värdnamnsdelen inställd på localhost , vilket innebär att användaren bara kommer att kunna ansluta till MySQL-servern från localhost (dvs. från systemet där MySQL Server körs).

För att ge åtkomst från en annan värd, ändra värdnamnsdelen ( localhost ) med IP-fjärrmaskinen. För att till exempel ge åtkomst från en maskin med IP 10.8.0.5 skulle du köra:

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

För att skapa en användare som kan ansluta från valfri värd använder du jokertecken '%' som en värddel:

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

Ge privilegier till ett MySQL-användarkonto

Det finns flera typer av behörigheter som kan beviljas ett användarkonto. Här hittar du en fullständig lista över privilegier som stöds av MySQL.

De mest använda privilegierna är:

  • ALL PRIVILEGES - Ger alla behörigheter till ett användarkonto. CREATE - Användarkontot får skapa databaser och tabeller. DROP - Användarkontot får släppa databaser och tabeller. DELETE - Användarkontot får radera rader från en specifik tabell. INSERT - Användarkontot får lägga till rader i en specifik tabell. SELECT - Användarkontot får läsa en databas. UPDATE - Användarkontot får uppdatera tabellrader.

För att ge specifika behörigheter till ett användarkonto kan du använda följande syntax:

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

Här är några exempel:

  • Gör alla privilegier till ett användarkonto över en specifik databas:

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

    Gör alla privilegier till ett användarkonto i alla databaser:

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

    Gör alla privilegier till ett användarkonto över en specifik tabell från en databas:

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

    Ge flera användare ett användarkonto över en specifik databas:

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

Visa MySQL-användarkontobehörigheter

För att hitta de privilegier som beviljats ​​ett specifikt MySQL-användarkonto använder du SHOW GRANTS uttalandet:

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)

Återkalla privilegier från ett MySQL-användarkonto

Syntaxen för att återkalla ett eller flera behörigheter från ett användarkonto är nästan identiskt som vid beviljande av behörigheter.

Till exempel, för att återkalla alla behörigheter från ett användarkonto över en specifik databas, använd följande kommando:

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

Ta bort ett befintligt MySQL-användarkonto

För att ta bort ett MySQL-användarkonto använder du DROP USER uttalandet:

DROP USER 'user'@'localhost'

Kommandot ovan tar bort användarkontot och dess privilegier.

Slutsats

Denna handledning täcker bara grunderna, men det bör vara en bra start för alla som vill lära sig att skapa nya MySQL-användarkonton och bevilja privilegier.

mysql mariadb