februar 3, 2022

supportnetværk

installation af Ubuntu-Server på Ubuntu-operativsystemet

sidst opdateret den: 2019-12-20

forfatter: Jered Heeschen

det er en open source relationsdatabase, der er gratis og meget udbredt. Det eret godt valg, hvis du ved, at du har brug for en database, men ikke ved meget omalle de tilgængelige muligheder.

denne artikel beskriver en grundlæggende installation af en databaseserver på Ubuntu-operativsystemet. Du skal muligvis installere andre pakker for at lade applikationer bruge , som udvidelser til PHP. Tjek din applicationdocumentation for detaljer.

installer Microsoft

installer Microsoft-serveren ved hjælp af Ubuntu Operativ system package manager:

sudo apt-get updatesudo apt-get install mysql-server

installationsprogrammet installerer Myscl og alle afhængigheder.

hvis secure installation utility ikke starter automatisk, når installationen er afsluttet, skal du indtaste følgende kommando:

sudo mysql_secure_installation utility

dette værktøj beder dig om at definere rodadgangskodenog andre sikkerhedsrelaterede muligheder, herunder fjernelse af fjernadgangtil rodbrugeren og indstilling af rodadgangskoden.

Tillad fjernadgang

hvis du har iptables aktiveret og vil oprette forbindelse til databasen fraen anden maskine, skal du åbne en port i serverens brandvæg (Standardporten er 3306). Du behøver ikke at gøre dette, hvis det program, der bruger kører på den samme server.

Kør følgende kommando for at tillade fjernadgang til serveren:

sudo ufw enablesudo ufw allow mysql

start Myskl-tjenesten

når installationen er afsluttet, kan du starte databasetjenesten ved at køre følgende kommando. Hvis tjenesten allerede er startet, en beskedinformerer dig om, at tjenesten allerede kører:

sudo systemctl start mysql

Start ved genstart

for at sikre, at databaseserveren starter efter en genstart, skal du køre følgendekommandoen:

sudo systemctl enable mysql

Configure interfaces

er som standard ikke længere bundet til ( lytte til ) nogen eksternt tilgængelige grænseflader.Rediger” bind-adresse ” – direktivet i/etc/myscl / myscl.conf.d / myskld.cnf:

bind-address= 127.0.0.1 ( The default. )bind-address= XXX.XXX.XXX.XXX ( The ip address of your Public Net interface. )bind-address= ZZZ.ZZZ.ZZZ.ZZZ ( The ip address of your Service Net interface. )bind-address= 0.0.0.0 ( All ip addresses. )

genstart tjenesten.

sudo systemctl restart mysql

Start myskl shell

der er mere end en måde at arbejde med en Myskl-server på, men denne artikelfokuserer på den mest grundlæggende og kompatible tilgang, mysql shell.

  1. ved kommandoprompten skal du køre følgende kommando for at starte mysql shell og indtaste den som rodbrugeren:

    /usr/bin/mysql -u root -p
  2. når du bliver bedt om en adgangskode, skal du indtaste den, du har angivet tilinstallationstid, eller hvis du ikke har angivet en, skal du trykke på Enter for at indsende nopadgangskode.

    følgende mysql shell prompt skal vises:

    mysql>

Indstil rodadgangskoden

hvis du er logget ind ved at indtaste en tom adgangskode, eller hvis du vil ændre det rodadgangskode, du har angivet, kan du oprette eller ændre adgangskoden.

  1. for versioner tidligere end Myskl 5.7 skal du indtaste følgende kommando i mysql shell, erstatte password meddin nye adgangskode:

    UPDATE mysql.user SET Password = PASSWORD('password') WHERE User = 'root';

    for version 5.7 og nyere skal du indtaste følgende kommando i mysql shell, erstatte password meddin nye adgangskode:

    UPDATE mysql.user SET authentication_string = PASSWORD('password') WHERE User = 'root';
  2. for at få ændringen til at træde i kraft skal du genindlæse de gemte brugeroplysninger med følgende kommando:

    FLUSH PRIVILEGES;

    Bemærk: Vi bruger ALL-caps til kommandoer. Hvis du skriver disse kommandoer med små bogstaver, fungerer de. Efter konvention skrives kommandoerne i ALL-caps for at få dem til at skille sig ud fra feltnavne og otherdata, der manipuleres.

hvis du har brug for at nulstille rodadgangskoden senere, skal du se Nulstil en rodadgangskode.

se brugere

gemmer brugeroplysningerne i sin egen database. Databasens navn er myskl. Inde i denne database er brugeroplysningerne i en tabel, adataset, navngivet bruger. Hvis du vil se, hvilke brugere der er konfigureret i tabellen, skal du køre følgende kommando:

SELECT User, Host, authentication_string FROM mysql.user;

følgende liste beskriver de dele af denne kommando:

  • vælg fortæller os, at du beder om data.
  • bruger, vært, authentication_string fortæller mig, hvilke felter du vil have det til at se i. Felter er kategorier for dataene i en tabel. I dette tilfælde Leder du efter brugernavnet, værten, der er knyttet til brugernavnet, Ogden krypterede adgangskodeindtastning.
  • fra myskl.bruger ” fortæller at hente dataene fra databasen og brugertabellen.
  • et semikolon (;) afslutter kommandoen.

Bemærk: alle forespørgsler slutter i et semikolon. Det er ikke muligt at behandle en forespørgsel, indtil du skriver et semikolon.

Brugerværter

følgende eksempel er output for den foregående forespørgsel:

SELECT User, Host, authentication_string FROM mysql.user;+------------------+-----------+-------------------------------------------+| User | Host | authentication_string |+------------------+-----------+-------------------------------------------+| root | localhost | *756FEC25AC0E1823C9838EE1A9A6730A20ACDA21 || mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE || mysql.sys | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE || debian-sys-maint | localhost | *27E7CA2445405AB10C656AFD0F86AF76CCC57692 |+------------------+-----------+-------------------------------------------+

brugere er tilknyttet en vært, specifikt, værten, hvorfra de opretter forbindelse.Rodbrugeren i dette eksempel er defineret for localhost, for IP-adressenaf localhost og serverens værtsnavn.Du skal normalt indstille en bruger til kun en vært, den fra hvilken dutypisk forbinde.

hvis du kører din applikation på den samme computer som serveren, er værten, som den opretter forbindelse til som standard, localhost. Eventuelle nye brugere, du opretter, skal have localhost i deres værtsfelt.

hvis din applikation forbinder eksternt, er værtsindgangen, som Myskl søger efterer IP-adressen eller DNS-værtsnavnet på fjerncomputeren (den fra hvilkenklienten kommer).

anonyme brugere

i eksempeludgangen har en post en værtsværdi, men intet Brugernavn eller adgangskode.Det er en anonym bruger. Når en klient opretter forbindelse uden angivet brugernavn,forsøger den at oprette forbindelse som en anonym bruger.

du vil normalt ikke have nogen anonyme brugere, men nogle Installationerinkludere en som standard. Hvis du ser en, skal du enten slette brugeren(se brugernavnet med tomme anførselstegn, som ‘ ‘) eller indstille en adgangskode til det.

Opret en database

der er forskel på en databaseserver og en database, selvomdisse udtryk bruges ofte om hverandre. Det er en databaseserver, hvilket betyder ittracks databaser og styrer adgangen til dem. Databasen gemmer dataene, ogDet er den database, som applikationer forsøger at få adgang til, når de interagerer med Myskl.

nogle applikationer opretter en database som en del af deres installationsproces, men andrekræver, at du selv opretter en database og fortælleansøgning om det.

for at oprette en database skal du logge ind på mysql shell og køre følgende kommando og erstatte demodb med navnet på den database, du vil oprette:

CREATE DATABASE demodb;

når databasen er oprettet, kan du bekræfte dens oprettelse ved at køre en forespørgsel tilliste alle databaser. Følgende eksempel viser forespørgslen og eksempeloutputtet:

SHOW DATABASES;+--------------------+| Database |+--------------------+| information_schema || demodb || mysql |+--------------------+3 rows in set (0.00 sec)

Tilføj en databasebruger

når applikationer opretter forbindelse til databasen ved hjælp af rodbrugeren, har de normalt flere privilegier, end de har brug for. Du kan tilføje brugere, som programmer kan bruge til at oprette forbindelse til den nye database. I det følgende eksempel oprettes en bruger ved navn demouser.

  1. for at oprette en ny bruger skal du køre følgende kommando i mysql shell:

    INSERT INTO mysql.user (User,Host,authentication_string,ssl_cipher,x509_issuer,x509_subject)VALUES('demouser','localhost',PASSWORD('demopassword'),'','','');
  2. når du foretager ændringer i brugertabellen i databasen, skal du bede om at læse ændringerne ved at skylle privilegierne som følger:

    FLUSH PRIVILEGES;
  3. Kontroller, at brugeren blev oprettet ved at køre en UDVÆLGELSESFORESPØRGSEL igen:

    SELECT User, Host, authentication_string FROM mysql.user;+------------------+-----------+-------------------------------------------+| User | Host | Password |+------------------+-----------+-------------------------------------------+| root | localhost | *756FEC25AC0E1823C9838EE1A9A6730A20ACDA21 || mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE || mysql.sys | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE || debian-sys-maint | localhost | *27E7CA2445405AB10C656AFD0F86AF76CCC57692 || demouser | localhost | *0756A562377EDF6ED3AC45A00B356AAE6D3C6BB6 |+------------------+-----------+-------------------------------------------+

Giv databasebrugertilladelser

lige efter du har oprettet en ny bruger, har den ingen privilegier. Brugeren kan logge ind, men kan ikke bruges til at foretage databaseændringer.

Resume

hvis du bare opretter en database og en bruger, er du færdig. Koncepterne, der er dækket her, skal give dig en solid start, hvorfra du kan lære mere.

  • Konfigurer server på Ubuntu-operativsystemet
  • Nulstil en adgangskode til root

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.