MySQL är ett av de mest eftersträvade, fria och öppna databashanteringssystemen och låter dig skapa flera användare och databaser. Det ger också specifika privilegier för att säkerställa att användare kan komma åt och hantera de databaser de har rätt till.


Denna handledning visar hur du hanterar din databas och databasanvändare från kommandoraden MySQL.

Innan vi börjar denna tutorial, se till att du har installerat den senaste versionen av MySQL och MariaDB på ditt system. MySQL kommer att användas som rotanvändare för att utföra lämpliga kommandon.

För att logga in på kommandoraden MySQL, kör kommandot nedan och ange ditt användarnamn och root-lösenord.

$ Mysql -u root -p

Steg 1 – Skapa en MySQL-databas

Börja med att skapa en ny MySQL / MariaDB-databas. För att göra det, kör kommandot nedan och ersätt avsnittet Databas namn med databasnamnet du planerar att skapa:

mysql> SKAPA DATABASE databasnamn;

Detta ger dig en utgång som nedan:

FrågaOK, 1 rad påverkad (0,00 sek)

Om det finns en befintlig databas visas felmeddelandet nedan:

FEL 1007 (HY000): Det går inte att skapa databasnamn “; databasen finns

Kör kommandot nedan för att säkerställa att du inte får detta fel även om du använder samma namn för din databas:

mysql> SKAPA DATABASERING OM INTE EXISTS databasnamn;

Du bör se utgången nedan:

FrågaOK, 1 rad påverkad, 1 varning (0,00 sek)

I detta fall visar avsnittet Fråga Ok att frågan genomfördes framgångsrikt. Då finns det 1 varning vilket innebär att din databas redan finns i systemet och att ingen databas skapades.

Steg 2 – Lista alla MySQL-databaser

Kör kommandot nedan för att lista alla databaser på din MySQL / MariaDB-server:

mysql> VISA DATABASER;

Detta ger dig en utgång som liknar detta:

+——————–+
| Databas |
+——————–+
| information_schema |
| databasnamn |
| mysql |
| performance_schema |
| sys |
+——————–+
5 rader i set (0,00 sek)

Från utgången ovan, följande databaser information_schema, mysql, performance_schema, och sys skapas under installationen. De databaser lagrar information för resten av databaserna, användare, systemkonfiguration, behörigheter och annan relevant information. De nämnda databaserna är viktiga vid installation av MySQL.

Steg 3 – Radera en MySQL-databas

Om du vill ta bort en MySQL-databas, kör kommandot nedan:

mysql> DROP DATABASE databasnamn;

Du bör få följande utgång:

FrågaOK, 0 rader påverkade (0,00 sek)

Varje försök att ta bort en icke-befintlig databas i systemet visar ett felmeddelande som visas nedan:

ERROR 1008 (HY000): Can’tdrop database ‘database_name’; databasen finns inte

För att säkerställa att du inte får detta fel kör du kommandot nedan:

mysql> DROP DATABASERA OM EXISTER databasnamn;

Utgången ska se ut så här:

FrågaOK, 0 rader påverkade, 1 varning (0,00 sek)

Fråga OK indikerar att frågan lyckades medan 1 varning betyder att databasen är obefintlig.

Steg 4 – Skapa ett nytt användarkonto i MySQL

Ett MySQL- eller MariaDB-användarkonto består av två delar; användarnamnet och värdnamnet.

Kör kommandot nedan för att skapa ett nytt MariaDB- eller MySQL-användarkonto. byt ut delen databasanvändaren kan ersättas med ditt föredragna användarnamn.

mysql> SKAPA ANVÄNDARE ‘databasanvändare’ @ ‘localhost’ IDENTIFIERAD AV ‘user_password’;

I det här kommandot är värdnamnet inställt på lokal värd vilket innebär att användaren kommer att hitta en enklare anslutning till MySQL-servern från den lokala värden.

Byt ut värdet för att ge en annan värd (er) åtkomst lokal värd i kommandot ovan med IP-adressen för din fjärrmaskin eller bara använda ‘%’  för värden. Detta ger MySQL-användarkontot tillåtelse att enkelt ansluta från alla värdar.

Utför kommandot nedan för att undvika att få ett fel när du skapar ett nytt användarkonto som redan finns i databasen:

mysql> SKAPA ANVÄNDARE OM INTE existerar ‘database_user’ @ ‘localhost’ IDENTIFIERAD AV ‘user_password’;

Det bör ge dig en utgång som den nedan:

FrågaOK, 0 rader påverkade, 1 varning (0,00 sek)

Steg 5 – Ändra ett lösenord för MySQL-användarkonto

Detta ämne har behandlats omfattande i vår artikel Hur man ändrar mitt root-lösenord.

Planen för att ändra ett lösenord för MySQL / MariaDB-användarkonto beror på vilken version av servern som körs på din virtuella maskin.

Kör kommandot nedan för att hitta versionen av din server:

$ Mysql –version

Om ditt system körs på MySQL 5.7.6 eller MariaDB 10.1.20 och nyare versioner för båda kan du ändra användarlösenordet med kommandot nedan:

mysql> ALTER ANVÄNDARE ‘database_user’ @ ‘localhost’ IDENTIFIERAD AV ‘new_password’;

För MySQL 5.7.5 eller MariaDB 10.1.20 och äldre versioner för båda, använd:

mysql> SET LÖSENORD FÖR ‘database_user’ @ ‘localhost’ = LÖSENORD (‘new_password’);

Båda alternativen ger dig en utgång som liknar den nedan:

FrågaOK, 0 rader påverkade (0,00 sek)

Steg 6 – Lista alla MySQL-användarkonton

För att lista alla MySQL / MariaDB-användarkonton, kör bara kommandot nedan för att fråga mysql.users tabell:

mysql> VÄLJ användare, värd FRA mysql.user;

Du bör se utgången nedan. Från utgången kan du se en lista över standardanvändare på MySQL 5.7-server som körs på en Ubuntu-server. Du kommer också att se två andra användarkonton som har lagts till tidigare, ‘Database_user’ @ ‘%’ och ‘Database_user’ @ ‘lokalvärd’

+——————+———–+
| användare | värd |
+——————+———–+
| databasanvändare | % |
| databasanvändare | localhost |
| debian-sys-maint | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
| rot | localhost |
+——————+———–+
6 rader i set (0,00 sek)

Steg 7 – Radera MySQL-användarkonto

Om du vill ta bort ett användarkonto kör du kommandot nedan:

mysql> DROP USER ‘database_user @’ localhost ‘;

Detta ger dig följande utgång:

DROPUSER’database_user @ ‘lokalvärd’;

Om du försöker ta bort ett användarkonto som inte finns i din databas ser du följande fel:

ERROR 1396 (HY000): Operation DROPUSER misslyckades för ‘database_user’ @ ‘localhost’

Utför kommandot nedan för att förhindra att detta fel inträffar:

mysql> DROP ANVÄNDARE OM EXISTERAR ‘database_user’ @ ‘localhost’;

Följande utgång ska visas:

FrågaOK, 0 rader påverkade, 1 varning (0,00 sek)

Steg 8 – Ge behörigheter till MySQL-användarkonto

Varje användarkonto kan beviljas flera typer av behörigheter. Du kan komma åt alla behörigheter som MySQL beviljar på den här länken. Låt oss titta på några exempel.

Kör kommandot nedan för att ge ett användarkonto alla behörigheter över alla databaser:

mysql> GE ALLA PRIVILEGER PÅ *. * TILL ‘database_user’ @ ‘localhost’;

Kör kommandot nedan för att ge ett användarkonto alla behörigheter över en viss tabell från databasen:

mysql> GE ALLA PRIVILEGER PÅ databasnamn.tabellnamn TILL ‘databasanvändare’ @ ‘localhost’;

För att bevilja ett användarkonto specifika behörigheter över en viss databastyp använder du kommandot nedan:

mysql>  GRANT SELECT, INSERT, DELETE ON database_name. * TO database_user @ ‘localhost’;

Steg 9 – Avbryta behörigheter från ett MySQL-användarkonto

För att avbryta behörigheter från något MySQL-användarkonto är den syntax som används nästan densamma som vid beviljande av behörigheter. Om du till exempel vill avbryta alla behörigheter från ett visst användarkonto för MySQL över en specifik databas, kör kommandot nedan:

mysql> ÖVERSIKT ALLA PRIVILEGER PÅ databasnamn. * TILL ‘databasanvändare’ @ ‘localhost’;

Steg 10 – Visa privilegier för MySQL-användarkonto

Utför kommandot nedan för att identifiera de specifika behörigheterna som tilldelas en viss MySQL-användarkontotyp:

mysql> VISA STÖD FÖR ‘database_user’ @ ‘localhost’;

Utgången kommer att vara:

+—————————————————————————+
| Bidrag för databasanvändare @ localhost |
+—————————————————————————+
| GRANTUSAGEON *. * TO’database_user ‘@’ localhost ‘|
| GE ALLA PRIVILEGESON `databasnamn`. * TILL ‘databas_användare’ @ ‘localhost’ |
+—————————————————————————+
2rowsinset (0,00 sek)

Det är allt.

Slutsats

Vid denna punkt bör du känna till grunderna och hur man hanterar MySQL-databaser och användare från kommandoraden.

Kolla in de tre bästa Bästa webbhotelltjänsterna

FastComet

Startpris:
$ 2.95


Pålitlighet
9,7


Prissättning
9,5


Användarvänlig
9,7


Stöd
9,7


Funktioner
9,6

Läs recensioner

Besök FastComet

A2 Hosting

Startpris:
$ 3,92


Pålitlighet
9,3


Prissättning
9,0


Användarvänlig
9,3


Stöd
9,3


Funktioner
9,3

Läs recensioner

Besök A2 Hosting

ChemiCloud

Startpris:
$ 2.76


Pålitlighet
10


Prissättning
9,9


Användarvänlig
9,9


Stöd
10


Funktioner
9,9

Läs recensioner

Besök ChemiCloud

Relaterade artiklar om hur man gör

  • Hur du är värd för Drupal 8-webbplatser med NGINX-servrar på VPS-planer
    mellanliggande
  • Hur man installerar phpIPAM på CentOS 7
    mellanliggande
  • Hur återställer jag ett MySQL-lösenord på Ubuntu 18.04?
    nybörjare
  • Hur du installerar Zabbix på CentOS 7
    mellanliggande
  • Hur man installerar phpMyAdmin på en CentOS 7 VPS eller en dedikerad server
    mellanliggande
Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me