Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie lasse ich eine MySQL-Datenbank vollständig im Arbeitsspeicher laufen?

Angenommen, Sie verstehen die Konsequenzen der Verwendung der MEMORY-Engine, wie in den Kommentaren erwähnt, und hier , sowie einige andere, die Sie finden, wenn Sie über suchen (keine Transaktionssicherheit, Sperrprobleme usw.) - Sie können wie folgt vorgehen:

MEMORY-Tabellen werden anders gespeichert als InnoDB, daher müssen Sie eine Export-/Importstrategie verwenden. Sichern Sie zuerst jede Tabelle separat in eine Datei mit SELECT * FROM tablename INTO OUTFILE 'table_filename' . Erstellen Sie die MEMORY-Datenbank und erstellen Sie die Tabellen neu, die Sie mit dieser Syntax verwenden werden:CREATE TABLE tablename (...) ENGINE = MEMORY; . Anschließend können Sie Ihre Daten mit LOAD DATA INFILE 'table_filename' INTO TABLE tablename importieren für jede Tabelle.