Android

Sådan opretter jeg mysql-brugerkonti og giver privilegier

Sådan oprettes en afgift fra telefonen - Parkeringskompagniet

Sådan oprettes en afgift fra telefonen - Parkeringskompagniet

Indholdsfortegnelse:

Anonim

MySQL er det mest populære open source-relationsdatabasestyringssystem. MySQL-server giver os mulighed for at oprette adskillige brugerkonti og give passende privilegier, så brugerne kan få adgang til og administrere databaser.

Denne tutorial beskriver, hvordan man opretter MySQL-brugerkonti og giver privilegier.

Før du begynder

Vi antager, at du allerede har MySQL eller MariaDB-server installeret på dit system.

Alle kommandoer udføres inde i MySQL-shell som root eller administrativ bruger. De minimale privilegier, der kræves for at oprette brugerkonti og definere deres privilegier, er CREATE USER og GRANT .

For at få adgang til MySQL-shell skriver du følgende kommando og indtaster din MySQL root-brugeradgangskode, når du bliver bedt om det:

mysql -u root -p

Opret en ny MySQL brugerkonto

En brugerkonto i MySQL består af et brugernavn og værtsnavndele.

For at oprette en ny MySQL-brugerkonto skal du køre følgende kommando:

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'user_password'; Udskift user_password af pladsholderværdi med dit tilsigtede nye brugernavn og user_password til pladsholderværdi med brugeradgangskoden.

I kommandoen ovenfor er værtsnavnsdelen indstillet til localhost , hvilket betyder, at brugeren kun kan oprette forbindelse til MySQL-serveren fra localhost (dvs. fra det system, hvor MySQL Server kører).

For at give adgang fra en anden vært skal du ændre værtsnavnsdelen ( localhost ) med den eksterne maskins IP. For eksempel for at give adgang fra en maskine med IP 10.8.0.5 ville du køre:

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

Hvis du vil oprette en bruger, der kan oprette forbindelse fra en hvilken som helst vært, skal du bruge wildcard '%' som en værtsdel:

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

Giv privilegier til en MySQL-brugerkonto

Der er flere typer privilegier, der kan tildeles en brugerkonto. Du kan finde en komplet liste over privilegier, der understøttes af MySQL her.

De mest anvendte privilegier er:

  • ALL PRIVILEGES - Yder alle privilegier til en brugerkonto. CREATE - Brugerkontoen har lov til at oprette databaser og tabeller. DROP - Brugerkontoen har tilladelse til at slippe databaser og tabeller. DELETE - Brugerkontoen har tilladelse til at slette rækker fra en bestemt tabel. INSERT - Brugerkontoen har tilladelse til at indsætte rækker i en bestemt tabel. SELECT - Brugerkontoen har tilladelse til at læse en database. UPDATE - Brugerkontoen har tilladelse til at opdatere tabelrader.

For at give specifikke privilegier til en brugerkonto kan du bruge følgende syntaks:

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

Her er nogle eksempler:

  • Gør alle privilegier til en brugerkonto over en bestemt database:

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

    Gennemfør alle privilegier til en brugerkonto på alle databaser:

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

    Grand alle privilegier til en brugerkonto over en bestemt tabel fra en database:

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

    Giv flere brugerrettigheder til en brugerkonto over en bestemt database:

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

Vis MySQL brugerkonto privilegier

For at finde de privilegier, der er tildelt til en bestemt MySQL-brugerkonto, skal du bruge SHOW GRANTS sætningen:

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)

Ophæv privilegier fra en MySQL brugerkonto

Syntaks for at tilbagekalde et eller flere privilegier fra en brugerkonto er næsten identisk som ved tildeling af privilegier.

For at tilbagekalde alle privilegier fra en brugerkonto over en bestemt database skal du bruge følgende kommando:

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

Fjern en eksisterende MySQL-brugerkonto

For at slette en MySQL-brugerkonto skal du bruge DROP USER sætningen:

DROP USER 'user'@'localhost'

Kommandoen ovenfor fjerner brugerkontoen og dens privilegier.

Konklusion

Denne tutorial dækker kun det grundlæggende, men det skal være en god start for alle, der ønsker at lære, hvordan man opretter nye MySQL-brugerkonti og tildeler privilegier.

mysql mariadb