Spørgsmål og svar

Tilbage
Hvordan får jeg lastet ind meget data/mange rader i MySQL?

Det findes to måder at laste ind store mængder data på som omgår indlastingsbegrænsningene. Disse har begge lav risiko for overbelastning:

1. Bulk insert

MySQL støtter indsetning (insert) af data med flere rader (rows) per insert-kommando. Det gøres eksempelvis så:

insert into login (brugerid,ipadresse,tid)
values
(124,'192.168.1.9','2006-03-22 10:14:14),
(125,'192.168.12.4','2006-03-22 10:19:21),
(101,'192.168.97.24','2006-04-01 01:01:01);

Programmet mysqldump,, der er installeret på vores shell-server, lager sådanne bulk insert-optimerte filer.

Se også MySQL-dokumentationen for INSERT.

2. Staggered upload

En teknik som kaldes "staggered insert/upload" består i, at data lastes ind i etapper. Det findes gratis script for at gøre dette tilgængelig på nettet, og et, der er meget brugt er bigdump.php (ozerov.de). Pas på at adgangskodebeskytte adgangen til bigdump.php.

For at undgå overbelastning skal man gøre nogle ændringer i bigdump.php ved at åbne filen i en teksteditor og ændre følgende linier:

$db_server   = 'mittnavn.mysql.domaeneshop.dk';
$db_name     = 'mittnavn';
$db_username = 'mittnavn';
$db_password = 'mittadgangskode';

$filename           = '';
$csv_insert_table   = ''; 
$csv_preempty_table = false; 
$ajax               = true;
$linespersession    = 800; // linier per sesion
$delaypersession    = 100000; // millisekunder (1/1000 sek) pause

Byt ud alle forekomster, at mittnavn med dit brugernavn og mittadgangskode med dit databaseadgangskode. Variablene $linespersession og $delaypersession er sat for at undgå, at importeringen overstiger begrænsningene for databasebrug. Selve databasefilen må enten (1) lastes op til samme mappe som bigdump.php eller (2) åbnes ved at starte scriptet i en netlæser. Husk, at Javascript skal være aktiveret i forkant.

Bigdump.php

Vær oppmerksom på, at dette må tag lang tid, afhængig af hvor stor filen er. Importeringen er ferdig når mældingen Congratulations: End of file reached, assuming OK vises nederst på siden.

Se også:

Søgeord:  

Indholdsfortegnelse

© 2019 Domeneshop AS · Om os · Vilkår · Fortrolighedspolitik