Sådan bruges CREATE USER i MariaDB
Med CREATE USER kan du oprette nye konti i MariaDB. For at definere brugerrettigheder skal du bruge GRANT. Hvis du vil tilføje en ny bruger, skal du have administratorrettigheder.
Trin-for-trin vejledning til brug af CREATE USER i MariaDB
CREATE USER bruges i MariaDB til at oprette en ny bruger. De enkelte trin, du skal udføre, vises her.
Trin 1: Opret forbindelse til MariaDB
Da nye brugere oprettes direkte i MariaDB, skal du først oprette forbindelse til databasen. Åbn MariaDB-kommandolinjen og log ind med dit brugernavn og din adgangskode. Sørg for, at din konto har administratorrettigheder.
Trin 2: Brug CREATE USER
Brug nu CREATE USER til at oprette en ny bruger i MariaDB. Syntaksen er som følger:
CREATE USER 'username'@'hostname' IDENTIFIED BY 'password';sqlI stedet for pladsholderen “brugernavn” skal du indtaste det ønskede brugernavn. Dette skal være unikt inden for servermiljøet. Erstat “værtsnavn” med det tilsvarende værtsnavn eller IP-adressen på din server efterfulgt af en sikker adgangskode til denne konto.
Trin 3: Konfigurer brugerrettigheder
Det næste trin er at tildele den nye bruger brugerrettigheder. Disse definerer, hvad en bruger kan gøre i systemet. En mere detaljeret forklaring af brugerrettigheder findes nedenfor. Brug GRANT til at tildele rettigheder. Her er syntaksen:
GRANT ALL PRIVILEGES ON database.table TO 'username'@'hostname';sqlEfter GRANT skal du angive de rettigheder, som kontoen skal have. Disse adskilles fra hinanden med kommaer. For eksempel kan ‘database.table’ henvise til en bestemt database eller individuelle tabeller eller gælde for hele systemet med *.*. I stedet for pladsholderen ‘username@hostname’ skal du bruge brugeren og værtsnavnet for den nye bruger.
Trin 4: Opret brugerrettigheder
Når du har tildelt brugerrettigheder, skal du bruge kommandoen FLUSH PRIVILEGES til at anvende dem direkte. Kommandoen ser således ud:
FLUSH PRIVILEGES;sqlTrin 5: Log ind
Den nye bruger kan nu logge ind på MariaDB-serveren. For at gøre dette behøver den nye bruger kun brugernavnet og den tilhørende adgangskode til kontoen. For at slette en konto kan du bruge kommandoen DROP USER. Ligesom med CREATE USER skal du have administratorrettigheder for at gøre dette.
Sådan tildeles brugerrettigheder
Privilegier bestemmer, hvilke handlinger brugerne kan udføre i MariaDB. Mens administratorbrugeren har alle rettigheder, er det vigtigt at begrænse brugerrettighederne for andre konti, da der ellers kan opstå sikkerhedsproblemer. De mest almindelige brugerrettigheder er:
ALL: Tildeler en konto alle rettigheder undtagenGRANT OPTIONGRANT OPTION: Giver en konto de samme tilladelser som din kontoSELECT: Giver adgang til databaser eller tabellerINSERT: Tillader en konto at tilføje nye rækker til en tabelUPDATE: Tillader en konto at opdatere rækkerDELETE: Tillader en konto at slette rækkerCREATE: Tillader en konto at oprette nye tabeller eller databaserALTER: Tillader en konto at ændre strukturen i en tabelDROP: Tillader en konto at slette tabeller eller databaser
Hvis du vil ændre brugerrettigheder, som du allerede har tildelt, kan du bruge kommandoen REVOKE. For at få et overblik over de rettigheder, du har tildelt en konto, kan du bruge kommandoen SHOW GRANTS FOR.
Sådan bruges OR REPLACE og IF NOT EXISTS sammen med CREATE USER
Hvis du vil oprette en ny konto, og der allerede findes en bruger med samme navn, får du en fejlmeddelelse. For at undgå dette problem tilbyder MariaDB to klausuler til CREATE USER: OR REPLACE og IF NOT EXISTS.
Syntaksen for OR REPLACE er:
CREATE OR REPLACE USER 'username'@'hostname' IDENTIFIED BY 'password';sqlDette er en kort form af dette:
DROP USER IF EXISTS 'username'@'hostname';
CREATE USER 'username'@'hostname' IDENTIFIED BY 'password';sqlSystemet kontrollerer, om der allerede findes en bruger med det navn, du ønsker at bruge til den nye brugerkonto. Hvis dette er tilfældet, erstattes den gamle konto med den nye. Hvis der ikke findes en tilsvarende bruger, oprettes en ny konto.
Dette er syntaksen for IF NOT EXISTS:
CREATE USER IF NOT EXISTS 'username'@'hostname' IDENTIFIED BY 'password';sqlOgså her kontrollerer systemet, om der allerede findes en konto med det pågældende navn. Hvis dette er tilfældet, modtager du en advarselsmeddelelse, og kontoen overskrives. Hvis der ikke findes en sådan bruger, oprettes en ny brugerkonto.