Arbeide med MySQL databasemotorer

denne artikkelen er en introduksjon til å jobbe med databasemotorer I MySQL.

hvis du vil følge noen av prosedyrene i denne artikkelen, må du ha root-tilgang til serveren.

Om MySQL databasemotorer

Databasemotorer gir den underliggende funksjonaliteten For MySQL å jobbe med og behandle data.De to Vanligste Og mest populære MySQL – databasemotorene Er MyISAM og Innodb. MyISAM er standard motor For MySQL for versjoner tidligere enn 5.5.5, og fungerer godt i de fleste scenarier. Men avhengig av dine behov, er det situasjoner der en annen databasemotor, som InnoDB, kan være det bedre valget. InnoDB støtter for eksempel transaksjoner, Mens MyISAM ikke gjør det. InnoDB gir også støtte for utenlandske nøkler, Mens MyISAM ikke gjør det.

hvis du har root-tilgang til serveren din, har Du full kontroll over hvordan Og når MySQL bruker de ulike databasemotorene. Du kan endre standard databasemotor, endre en bestemt tabell databasemotor, og mer.Denne artikkelen antar at Du allerede vet hvordan Du får Tilgang Til MySQL fra kommandolinjen ved hjelp av mysql-programmet. Hvis du ikke vet hvordan du gjør dette, kan du lese denne artikkelen først.

Bestemme standard databasemotor

for å bestemme standard databasemotor for installasjonen, skriv inn følgende kommando på mysql> prompt:

SHOW ENGINES;

En liste over støttede motorer vises, sammen med en kort beskrivelse og støttede funksjoner for hver motor. Standard databasemotor er merket SOM STANDARD I Støtte-kolonnen.

Endre standard databasemotor

du kan endre standard databasemotor For MySQL installasjon. Når du har gjort dette, vil alle nye tabeller du oppretter bruke den nye databasemotoren (med mindre du eksplisitt angir motoren under oppretting av tabellen).

for å endre standard databasemotor, følg disse trinnene:

  1. Bruk din foretrukne tekstredigerer til å åpne min.cnf-fil på serveren din. Plasseringen av min.cnf-filen avhenger Av Linux-distribusjonen din: På CentOS Og Fedora, my.cnf-filen er plassert i / etc-katalogen.
  2. På Debian Og Ubuntu, min.cnf-filen er plassert i katalogen / etc / mysql.
  3. I min.cnf-fil, finn delen.
  4. Legg til eller endre følgende linje i seksjonen. Erstatt MOTOREN med navnet på motoren du vil bruke som standard:

    default-storage-engine=ENGINE

    hvis Du aktiverer InnoDB databasemotoren, avhengig Av Linux-distribusjonen, må du kanskje deaktivere følgende linje i my.cnf-fil:

    skip-innodb

    for å gjøre dette, legg bare et pund tegn ( # ) til begynnelsen av linjen, som følger:

    #skip-innodb

  5. Lagre endringene i min.cnf-fil, og avslutt deretter tekstredigering.
  6. Start MySQL-serveren på Nytt ved hjelp av riktig kommando for Linux-distribusjonen din:

    • for CentOS og Fedora, skriv:
      service mysqld restart
  7. For Debian og Ubuntu, skriv:

    service mysql restart
  8. hvis du vil bekrefte den nye standard databasemotoren, bruker du sql-setningen vis motorer som beskrevet i delen bestemme standard databasemotor.

Bestemme tabellens nåværende databasemotor

for å finne ut hvilken motor en databasetabell bruker, skriv inn følgende kommando på mysql > prompt. Erstatt database med navnet på databasen du vil sjekke:

SELECT TABLE_NAME, ENGINE FROM information_schema.TABLES where TABLE_SCHEMA = 'database';

denne kommandoen viser en liste over hver tabell i databasen, sammen med motoren hver tabell bruker.

Endre databasemotoren for en tabell

du kan endre databasemotoren for en tabell som allerede finnes. FØLGENDE SQL-setning viser for eksempel hvordan du endrer en tabell som heter myTable for å bruke innodb-motoren:

ALTER TABLE myTable ENGINE = InnoDB;

Opprette en ny tabell med en bestemt databasemotor

når du oppretter en tabell i en database, kan du eksplisitt angi databasemotoren (Ellers Bruker MySQL standard databasemotor under oppretting av tabell). FØLGENDE SQL-setning viser for eksempel hvordan du oppretter en tabell som heter myTable som bruker MyISAM-databasemotoren:

CREATE TABLE myTable ( id INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (id), data VARCHAR(20) NOT NULL ) ENGINE MyISAM;

Simiarly, for å lage en tabell som bruker innodb databasemotoren, kan du bruke FØLGENDE SQL-setning:

CREATE TABLE myTable ( id INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (id), data VARCHAR(20) NOT NULL ) ENGINE InnoDB;

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.