Sådan opretter du MySQL-brugerkonti og giver tilladelser

MySQL er en fantastisk open source databasestyringsapp, der giver dig mulighed for at gemme, organisere og hente information. Det har en masse muligheder for at give specificerede brugere forskellige tilladelser i tabellerne og databaserne. Hvis det er det, du er interesseret i, skal du ikke lede længere. Dette er vejledningen for dig.

Sådan opretter du en ny bruger

Sådan opretter du en ny bruger i MySQL-shell.
For det første har en brugerkonto i MySQL to dele: et brugernavn og et værtsnavn. For at generere en ny MySQL-brugerkonto skal du køre denne kommando:
"mysql> CREATE USER 'newuser' @ 'localhost' IDENTIFICERET AF 'user_password'"

Bemærk: Erstat "ny bruger" med det nye brugernavn og "user_password" med brugeradgangskoden.

I dette eksempel er værtsnavnsdelen indstillet til localhost. Dette betyder, at brugeren kun vil kunne oprette forbindelse til MySQL-serveren fra localhost, hvilket betyder det system, som MySQL-serveren kører på.

Sådan gives tilladelser

Lige nu har den nye bruger ingen tilladelser og kan ikke gøre noget inden for databaserne. Så den første ting, du vil gøre, er at give brugeren adgang til de data, de har brug for. Der er mange privilegier, som du kan tildele den nye bruger, men de mest almindeligt anvendte er:

  • ALLE PRIVILEGER - Yder alle privilegier til en brugerkonto.
  • CREATE - Tillader brugerkontoen at oprette databaser og tabeller.
  • DROP - Tillader brugerkontoen at slippe databaser og tabeller.
  • SLET - Tillader brugerkontoen at slette rækker fra en bestemt tabel.
  • INSERT - Tillader brugerkontoen at indsætte rækker i en bestemt tabel.
  • VÆLG - Tillader brugerkontoen at læse en database.
  • UPDATE - Tillader brugerkontoen at opdatere tabelrader.

For at give specifikke privilegier til en brugerkonto skal du bruge følgende syntaks:
mysql> GRANT tilladelse1, tilladelse2 ON database_name.table_name TO 'database_user' @ 'localhost';

For eksempel:
Gør alle privilegier til en brugerkonto over en bestemt database:
mysql> TILDEL ALLE PRIVILEGIER PÅ databasenavn. * TIL 'database_bruger' @ 'localhost';
Grand alle privilegier til en brugerkonto på alle databaser:
mysql> TILDEL ALLE PRIVILEGIER PÅ *. * TIL 'database_bruger' @ 'localhost';
Grand alle privilegier til en brugerkonto over en bestemt tabel fra en database:
mysql> TILDEL ALLE PRIVILEGIER PÅ database_navn.tabelnavn til 'database_bruger' @ 'localhost';
Giv flere brugerrettigheder til en brugerkonto over en bestemt database:
mysql> TILDEL SELECT, INSERT, DELETE ON database_name. * TO database_user @ '

Hver gang du opdaterer eller ændrer en tilladelse, skal du huske at bruge kommandoen Flush Privileges.
Når du er færdig med de tilladelser, som du ønskede at konfigurere til dine nye brugere, skal du altid genindlæse alle privilegier.

Sådan tilbagekaldes en tilladelse

Hvis du har brug for at tilbagekalde en tilladelse, er strukturen næsten identisk med at give den.
Hvis du vil tilbagekalde alle privilegier fra en brugerkonto over en bestemt database, skal du køre denne kommando:
mysql> GENNEM ALLE PRIVILEGIER PÅ databasenavn. * FRA 'database_bruger' @ localhost '

Bemærk: Ved tilbagekaldelse af tilladelser kræver syntaks, at du bruger FROM i stedet for TIL, som vi brugte, når der blev givet tilladelser.

Forhåbentlig har du en bedre fornemmelse af, hvordan du tilføjer nye brugere og giver dem en række tilladelser i en MySQL-database efter at have læst denne vejledning.

July 28, 2020

Efterlad et Svar