Skip to content

Hallitut tietokannat

Frostmoln ajaa puolestasi hallittuja PostgreSQL- ja MySQL-instansseja — alusta luo virtuaalikoneen, liittää pysyvän tallennustilan, määrittää moottorin ja antaa sinulle käyttövalmiin yhteyden. Sinä hallitset dataasi; me hallitsemme alla olevaa infrastruktuuria.

Moottorin ja version valinta

Valitse luontihetkellä PostgreSQL tai MySQL. Kummallakin moottorilla on useita versioita, ja luonnin pudotusvalikko on totuuden lähde sille, mitä voit tällä hetkellä käynnistää — tällä hetkellä noin PostgreSQL 14–17 ja MySQL 8.0 / 8.4.

Jokaisella versiolla on elinkaaren tila:

TilaKäynnistettävissä?Merkitys
currentKylläUusin täysin tuettu julkaisu
supportedKylläTäysin tuettu
deprecatedKyllä (merkitty)Edelleen käynnistettävissä, näytetään (deprecated)-merkinnällä — suunnittele siirtyminen pois
eolEiElinkaaren loppu — piilotettu luonnin pudotusvalikosta

Kunkin moottorin suositeltu versio on merkitty (Recommended). Elinkaaren loppupäässä olevia ja esikatseluversioita ei tarjota uusille instansseille.

Mitoitus

Instanssien koot käyttävät db.gp1.<size>-kokoperhettä (yleiskäyttöinen):

KokovCPURAM
db.gp1.micro11 GB
db.gp1.small24 GB
db.gp1.medium48 GB
db.gp1.large816 GB
db.gp1.xlarge1632 GB

Valitset tallennustilan erikseen (20–1000 GB). Luontidialogi näyttää arvioidun kustannuksen ennen vahvistusta.

Luo instanssi

Mene portaalissa kohtaan Databases → Instances → Create ja valitse moottori, versio, koko, tallennustilan koko sekä VPC + aliverkko, johon instanssi liitetään. Ota halutessasi käyttöön korkea käytettävyys (katso alta).

Komentoriviltä

Elinkaarikomennot ovat moottorikohtaisia (fm database postgres … / fm database mysql …); moottorit ylittävä fm database … -ryhmä listaa moottoreiden poikki.

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

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

# Moottorit ylittävät näkymät:
fm database instance list
fm database version list

Terraformilla

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
}

Yhdistä

Provisioinnin jälkeen instanssin tietosivu paljastaa yhteystiedot Show Credentials -painikkeen takaa:

  • Host — instanssin yksityinen osoite
  • Port5432 (PostgreSQL) tai 3306 (MySQL)
  • Usernamepgadmin (PostgreSQL) tai mysqladmin (MySQL)
  • Password — sinulle generoitu (kierrätettävissä)
  • käyttövalmis yhteyden URI

Tietokannat ovat tavoitettavissa samassa VPC:ssä olevista instansseista; luontiprosessi avaa moottorin portin instanssin suojausryhmässä. Yhdistä kuten millä tahansa vakioasiakkaalla:

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

TIP

Käsittele järjestelmänvalvojan tunnistetietoja kuten mitä tahansa salaisuutta — tallenna ne Secrets-palveluun tai sovelluksesi salaisuusvarastoon, älä lähdekoodin hallintaan.

Korkea käytettävyys

Ota korkea käytettävyys käyttöön luontihetkellä (HA-vaihtoehto portaalissa, --ha komentorivillä tai ha_enabled = true Terraformissa). Alusta luo valmiustilan ensisijaisen rinnalle, jotta instanssi voi tehdä vikasietoisen vaihdon. Korkea käytettävyys valitaan luontihetkellä.

Varmuuskopiot ja palautus

PostgreSQL- ja MySQL-instanssit tukevat ajastettuja ja pyynnöstä otettavia varmuuskopioita. Ne otetaan käyttöön erikseen: portaalin luontilomake rastittaa Enable Automated Backups puolestasi, mutta komentorivillä annat --backup ja Terraformissa asetat backup_enabled = true — muuten instanssi luodaan ilman niitä. Aikataulu annetaan cron-lausekkeena (oletuksena 0 2 * * *). Jokainen varmuuskopio salataan tenantisi omalla varmuuskopiointiavaimella ennen kuin se poistuu instanssista.

Säilytysaika on vähintään 35 ja enintään 90 päivää. Varmuuskopiot kirjoitetaan muuttumattomaan, objektilukittuun tallennustilaan, joka säilyttää jokaisen objektin 35 päivää, joten lyhyempi säilytysaika ei voisi poistaa mitään aiemmin — API hylkää sen. Itse tekemäsi varmuuskopion poisto tulee voimaan sinulle heti; tallennettu objekti siivotaan, kun sen muuttumattomuusikkuna on kulunut.

Portaalissa käytä instanssin Backups-välilehteä. Varmuuskopion voi ottaa vain, kun instanssi on käynnissä. Tenantisi varmuuskopiointiavaimen peruminen (fm database backup-key revoke) poistaa käytöstä sekä varmuuskopioinnin että palautuksen kaikilta tenantin hallituilta tietokannoilta, kunnes otat sen uudelleen käyttöön.

Ennen varmuuskopioiden julkaisua luodut instanssit

Varmuuskopioagentti tulee instanssin levykuvan mukana, joten ennen hallittujen varmuuskopioiden julkaisua luotu instanssi ei sisällä sitä: tällaisen instanssin varmuuskopio jää tilaan creating eikä valmistu koskaan. Luo uusi instanssi saadaksesi varmuuskopiot.

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" {
  # … luontiargumentit kuten yllä …
  backup_enabled        = true
  backup_schedule       = "0 2 * * *"
  backup_retention_days = 35
}

Palautus

Palautus ei ole tuhoava: se luo varmuuskopiosta uuden instanssin ja jättää lähteen koskemattomaksi. Palautus perustuu varmuuskopioon — ajanhetkeen palauttaminen (PITR) ei ole vielä saatavilla.

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

Instanssin poistaminen on pysyvää

Instanssin poistaminen poistaa sen ja sen tallennustilavolyymin. Ota ensin varmuuskopio, jos saatat tarvita dataa — ja säilytä oma looginen vedos jossakin kestävässä, kuten objektitallennustilassa, jos haluat kopion alustan ulkopuolelle:

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

Elinkaari ja rajoitukset

  • Versiot ovat kiinteät instanssin koko eliniän ajan — paikallaan tehtäviä päivityksiä ei ole vielä saatavilla. Siirtyäksesi uudempaan pääversioon luo uusi instanssi kyseisellä versiolla ja siirrä datasi (esim. pg_dump- / mysqldump-työkalulla).
  • Poistaminen on pysyvää ja poistaa tallennustilavolyymin (katso yltä).
  • Instanssi sijaitsee yhdessä VPC:ssä/aliverkossa (yhdellä alueella).

Aiheeseen liittyvää