Skip to content

Administrerte databaser

Frostmoln kjører administrerte PostgreSQL- og MySQL-instanser for deg — plattformen klargjør den virtuelle maskinen, kobler til persistent lagring, konfigurerer motoren og gir deg en klar-til-bruk-tilkobling. Du administrerer dataene dine; vi administrerer infrastrukturen under.

Velge motor og versjon

Velg PostgreSQL eller MySQL ved opprettelse. Hver motor tilbyr flere versjoner, og opprettelsesnedtrekkslisten er fasiten for hva du kan starte akkurat nå — for øyeblikket omtrent PostgreSQL 14–17 og MySQL 8.0 / 8.4.

Hver versjon har en livssyklusstatus:

StatusStartbar?Betydning
currentJaNyeste fullt støttede utgivelse
supportedJaFullt støttet
deprecatedJa (merket)Fortsatt startbar, vises med en (deprecated)-markering — planlegg å gå bort fra den
eolNeiSlutt på levetid — skjult fra opprettelsesnedtrekkslisten

Den anbefalte versjonen for hver motor er merket (Anbefalt). Versjoner ved slutt på levetid og forhåndsvisningsversjoner tilbys ikke for nye instanser.

Dimensjonering

Instansstørrelser bruker db.gp1.<size>-størrelsesfamilien (generelt formål):

StørrelsevCPURAM
db.gp1.micro11 GB
db.gp1.small24 GB
db.gp1.medium48 GB
db.gp1.large816 GB
db.gp1.xlarge1632 GB

Du velger lagring separat (20–1000 GB). Opprettelsesdialogen viser den estimerte kostnaden før du bekrefter.

Opprette en instans

I portalen går du til Databaser → Instanser → Opprett og velger motor, versjon, størrelse, lagringsstørrelse og VPC + subnett som instansen kobles til. Aktiver eventuelt høy tilgjengelighet (se nedenfor).

Fra CLI-en

Livssykluskommandoer er motorspesifikke (fm database postgres … / fm database mysql …); den motoroverskridende fm database …-gruppen lister på tvers av motorer.

bash
fm database postgres instance create \
  --name app-db \
  --version 16 \
  --flavor db.gp1.medium \
  --storage 100 \
  --vpc my-vpc \
  --subnet my-subnet

# MySQL er symmetrisk:
fm database mysql instance create --name app-db --version 8.4 --flavor db.gp1.small --storage 40 --vpc my-vpc --subnet my-subnet

# Motoroverskridende visninger:
fm database instance list
fm database version list

Med Terraform

hcl
resource "frostmoln_postgres_instance" "app" {
  name             = "app-db"
  version          = "16"
  flavor_id        = "db.gp1.medium"
  storage_gb       = 100
  vpc_id           = frostmoln_vpc.main.id
  subnet_id        = frostmoln_subnet.main.id
  ha_enabled       = true
}

Koble til

Etter klargjøring viser instansens detaljside tilkoblingsinformasjonen bak en Vis påloggingsinformasjon-knapp:

  • Vert — instansens private adresse
  • Port5432 (PostgreSQL) eller 3306 (MySQL)
  • Brukernavnpgadmin (PostgreSQL) eller mysqladmin (MySQL)
  • Passord — generert for deg (kan roteres)
  • en klar-til-bruk tilkoblings-URI

Databaser er tilgjengelige fra instanser på samme VPC; opprettelsesflyten åpner motorporten i instansens sikkerhetsgruppe. Koble til som med en hvilken som helst standardklient:

bash
psql "host=<host> port=5432 user=pgadmin dbname=postgres"

TIP

Behandle administratorpåloggingsinformasjonen som enhver hemmelighet — lagre den i Secrets eller applikasjonens hemmelighetslager, ikke i versjonskontroll.

Høy tilgjengelighet

Aktiver høy tilgjengelighet ved opprettelse (HA-alternativet i portalen, --ha på CLI-en, eller ha_enabled = true i Terraform). Plattformen klargjør en standby ved siden av primæren slik at instansen kan utføre failover. HA velges ved opprettelse.

Sikkerhetskopier og gjenoppretting

PostgreSQL- og MySQL-instanser støtter planlagte sikkerhetskopier og sikkerhetskopier på forespørsel. De må velges aktivt: portalens opprettelsesskjema huker av Enable Automated Backups for deg, men på CLI-en sender du --backup og i Terraform setter du backup_enabled = true — ellers opprettes instansen uten dem. Planen angis som et cron-uttrykk (0 2 * * * som standard). Hver sikkerhetskopi krypteres med tenantens egen sikkerhetskopinøkkel før den forlater instansen.

Oppbevaringstiden er minst 35 dager og maksimalt 90. Sikkerhetskopier skrives til uforanderlig, objektlåst lagring som beholder hvert objekt i 35 dager, så en kortere oppbevaringstid kunne ikke slettet noe tidligere — API-et avviser den. At du selv sletter en sikkerhetskopi får effekt for deg umiddelbart; det lagrede objektet fjernes når uforanderlighetsvinduet er utløpt.

I portalen bruker du fanen Backups på instansen. En sikkerhetskopi kan bare tas mens instansen kjører. Å tilbakekalle tenantens sikkerhetskopinøkkel (fm database backup-key revoke) slår av både sikkerhetskopiering og gjenoppretting for alle administrerte databaser i tenanten til du aktiverer den igjen.

Instanser opprettet før sikkerhetskopiene ble lansert

Agenten som tar sikkerhetskopier følger med instansbildet, så en instans som ble opprettet før administrerte sikkerhetskopier ble lansert, mangler den: en sikkerhetskopi på en slik instans blir stående i creating og fullføres aldri. Opprett en ny instans for å få sikkerhetskopier.

bash
fm database postgres backup list <instance-id>
fm database postgres backup create <instance-id> --name pre-migration
fm database postgres backup delete <instance-id> <backup-id>
hcl
resource "frostmoln_postgres_instance" "app" {
  # … opprettelsesargumenter som ovenfor …
  backup_enabled        = true
  backup_schedule       = "0 2 * * *"
  backup_retention_days = 35
}

Gjenoppretting

Gjenoppretting er ikke-destruktiv: den klargjør en ny instans fra sikkerhetskopien og lar kilden være urørt. Gjenoppretting tar utgangspunkt i en sikkerhetskopi — gjenoppretting til et tidspunkt (PITR) er ennå ikke tilgjengelig.

bash
fm database postgres restore <instance-id> --backup <backup-id> --target-name app-db-restored

Sletting av en instans er permanent

Sletting av en instans fjerner den og lagringsvolumet. Ta en sikkerhetskopi først hvis du kan trenge dataene — og behold en egen logisk dump et varig sted, slik som objektlagring, hvis du vil ha en kopi utenfor plattformen:

bash
pg_dump   "host=<host> user=pgadmin dbname=app"  > app.sql   # PostgreSQL
mysqldump -h <host> -u mysqladmin app            > app.sql   # MySQL

Livssyklus og begrensninger

  • Versjoner er låst for instansens levetid — oppgraderinger på stedet er ennå ikke tilgjengelige. For å gå over til en nyere hovedversjon, opprett en ny instans på den versjonen og migrer dataene dine (f.eks. med pg_dump / mysqldump).
  • Sletting er permanent og fjerner lagringsvolumet (se ovenfor).
  • En instans lever i én VPC/ett subnett (én region).

Relatert