Mysql
 sql >> Database >  >> RDS >> Mysql

mysql impiega troppo tempo per inserire le righe

Non presumere automaticamente che le impostazioni del tuo server siano errate. Probabilmente le impostazioni predefinite vanno bene. Inserire 10000 righe dovrebbe essere un gioco da ragazzi, anche su una vecchia macchina, ma dipende da come si fanno gli inserti.

Qui descriverò 3 metodi per inserire i dati, che vanno da lento a veloce:

Quanto segue è estremamente lento se hai molte righe da inserire:

INSERT INTO mytable (id,name) VALUES (1,'Wouter');
INSERT INTO mytable (id,name) VALUES (2,'Wouter');
INSERT INTO mytable (id,name) VALUES (3,'Wouter');

Questo è già molto più veloce:

INSERT INTO mytable (id, name) VALUES
  (1, 'Wouter'),
  (2, 'Wouter'),
  (3, 'Wouter');

(Sintassi errata modificata)

E questo di solito è il più veloce:

Avere un file CSV simile a questo:

1,Wouter
2,Wouter
3,Wouter

E poi esegui qualcosa come

LOAD DATA FROM INFILE 'c:/temp.csv' INTO TABLE mytable

Quale dei metodi precedenti utilizzi?