# Hvordan installere MySQL på Ubuntu 20.04

MySQL er en av de mest populære åpne kildedatabasene. Den er kjent for sin **ytelse, pålitelighet og skalerbarhet**, og brukes i mange forskjellige områder, fra små webhotellsystemer til store bedrifter. I denne artikkelen forklarer vi trinn for trinn hvordan du installerer MySQL på Ubuntu 20.04, slik at du kan sette opp et pålitelig databasestyringssystem.

## Hva er kravene for å installere MySQL på Ubuntu 20.04?

Det er relativt få systemkrav for å installere MySQL på Ubuntu 20.04, og disse bør være oppfylt på de fleste moderne stasjonære og serversystemer. Det er viktig å merke seg at kravene kan variere avhengig av databasens formål og omfang. Hvis du for eksempel ønsker å kjøre en ressurskrevende applikasjon som bruker **store databaser eller komplekse spørringer**, vil det kreves mer RAM og prosessorkraft for å sikre god ytelse. Du bør også ha god plass på harddisken for å gi rom for fremtidig vekst og tillegg av flere databaser.

Du bør sjekke **nettverkskonfigurasjonen og brannmurinnstillingene** for å sikre jevn kommunikasjon mellom MySQL-serveren og klientene. MySQL-serveren bør ha en statisk IP-adresse for å unngå problemer med tilkoblingen.

Her er minimumskravene for å installere MySQL:

- **Prosessor (CPU)**: x86-64-arkitektur, min. 1 GHz (dobbel kjerne)
- **RAM**: min. 1 GB
- **Operativsystem**: Ubuntu 20.04, en brukerkonto med sudo- og root-rettigheter
- **Brannmur**: MySQL-port 3306 åpen
- **Harddiskplass**: min. 500 MB
- **Internettforbindelse**: Nødvendig for å laste ned pakker og koble til MySQL-serveren

## Trinnvis veiledning for hvordan du installerer MySQL på Ubuntu 20.04

MySQL kan installeres på Ubuntu 20.04 ved hjelp av pakkehåndteringssystemet APT (Advanced Package Tool). Etter installasjonen må du sette opp og konfigurere det, og for dette trenger du **root-passordet og tilgang til eksterne klienter**. Nedenfor viser vi deg trinn for trinn hvordan du installerer MySQL på Ubuntu 20.04.

### Trinn 1: Oppdater pakkeindeksen

Først er det lurt å sørge for at listen over pakker er oppdatert. Du kan bruke følgende kommando til dette:

```bash
$ sudo apt update
```

### Trinn 2: Installer MySQL-serveren

Deretter installerer du MySQL-serverpakken med **APT**:

```bash
$ sudo apt install mysql-server
```

For å kontrollere at serveren kjører, kan du starte den manuelt med kommandoen **systemctl**.

```bash
$ sudo systemctl start mysql.service
```

### Trinn 3: Konfigurer MySQL

MySQL oppfyller ikke de anbefalte sikkerhetsstandardene rett etter installasjonen. For å løse dette, bruk skriptet som tilbys av MySQL for **å endre innstillingene slik at serveren blir bedre beskyttet**. Dette vil angi root-passordet, fjerne anonyme brukere og begrense ekstern tilgang.

Du må ta visse forholdsregler for å sikre at du kjører skriptet riktig. Appen vil endre passordet for root-kontoen, som er deaktivert som standard på Ubuntu. For å unngå feil må du justere **autentiseringsmetoden for root-brukere**.

For å gjøre dette, start MySQL-kommandoprompten:

```bash
$ sudo mysql
```

Bruk kommandoen **ALTER USER** til å angi et passord for root:

```bash
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
```

Lukk MySQL-kommandoprompten:

```bash
mysql> exit
```

Kjør sikkerhetsskriptet:

```bash
$ sudo mysql_secure_installation
```

For å autentisere root-brukeren, skriv inn følgende:

```bash
$ mysql -u root -p
```

Når skriptet er ferdig, kan du endre standardgodkjenningsmetoden igjen:

```bash
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH auth_socket;
```

Dette vil gjøre det mulig for deg å koble til **sudo mysql** -kommandoen igjen.

### Trinn 4: Konfigurer MySQL-brukere

Når du installerer MySQL, opprettes en root-bruker som har alle rettigheter for MySQL-serveren og full kontroll over databaser, tabeller og brukere. For å øke sikkerheten bør du **opprette en bruker med begrensede rettigheter**.

For å gjøre dette, åpner du MySQL-kommandoprompten:

```bash
$ sudo mysql
```

Hvis du har angitt et passord som autentiseringsmetode, bruk følgende:

```bash
$ mysql -u root -p
```

Opprett nå en ny bruker for MySQL:

```bash
mysql> CREATE USER 'username'@'host' IDENTIFIED WITH authentication_plugin BY 'password';
```

Skriv inn brukernavnet ditt i stedet for «brukernavn» og navnet på verten din i stedet for «vert». Hvis du kjører Ubuntu lokalt, skriver du **localhost**. Uttrykket «WITH authentication\_plugin» er valgfritt. Pluginen «auth\_socket» har sterke sikkerhetsinnstillinger og krever ikke passord for å logge inn.

Med mindre annet er spesifisert, bruker MySQL plugin-modulen «caching\_sha2\_password» for autentisering. Noen versjoner av PHP er imidlertid ikke kompatible med denne. Du kan i stedet bruke den velprøvde plugin-modulen «mysql\_native\_password»:

```bash
mysql> CREATE USER 'username'@'host' IDENTIFIED WITH mysql_native_password BY 'password';
```

Eller bruk funksjonen «alter» for en eksisterende bruker:

```bash
mysql> ALTER 'username'@'host' IDENTIFIED WITH mysql_native_password BY 'password';
```

### Trinn 5: Tildel privilegier

Nå er det på tide å angi hvilke rettigheter den nye brukeren skal ha. Syntaksen for dette er:

```bash
mysql> GRANT PRIVILEGE ON database.table TO 'username'@'host';
```

Privilegier skilles med komma. For å gi **globale** privilegier, erstatt «database.table» med en stjerne «\*».

I følgende eksempel gir vi en bruker tillatelse til å opprette (CREATE), endre (ALTER) og slette (DROP) databaser og til å sette inn (INSERT), velge (SELECT), oppdatere (UPDATE) og slette (DELETE) data i en tabell.

```bash
mysql> GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT on *.* TO 'user'@'host' WITH GRANT OPTION;
```

«MED TILDELINGSOPPSJON» gir brukeren tillatelse til å gi sine privilegier til andre brukere.

Tøm nå hurtigbufferen med «FLUSH PRIVILEGES»:

```bash
mysql> FLUSH PRIVILEGES;
```

Deretter kan du lukke MySQL-kommandoprompten:

```bash
mysql> exit
```

Nå kan du logge inn med det nye brukernavnet:

```bash
$ mysql -u username -p
```

### Trinn 6: Test MySQL

Kontroller om MySQL kjører riktig med for eksempel systemadministratoren **Systemd**:

```bash
$ systemctl status mysql.service
```

Alternativt kan du koble til MySQL-databasen. Følgende kommando logger deg inn på MySQL og viser serverversjonen:

```bash
$ sudo mysqladmin -p -u username version
```


This is a markdown version of: [https://www.ionos.com/nb-no/digitalguide/nettsteder/webutvikling/installere-mysql-paa-ubuntu-2004/](https://www.ionos.com/nb-no/digitalguide/nettsteder/webutvikling/installere-mysql-paa-ubuntu-2004/) for AI/LLM consumption.