von myISAM auf MEMORY! ERROR 1114: Table full

xip

Bekanntes Mitglied
Hallo, ich habe folgene MyISAM Tabelle:

Tabelle feld:
feld varchar(500)
domain varchar(50)
time timestamp

jetzt wollte ich sie mit:

ALTER TABLE feld engine = memory;

in den Speicher packen. Da kommt allerdings folgende Fehlermeldung:

ERROR 1114 (HY000): The table '#sql-1018_1' is full

habt ihr da eine Idee woran das liegen kann?
 

ice-breaker

Top Contributor
der Speicher von MySQL der für die Memory-Engine bereitgestellt wird, reicht nicht aus um alle Daten in der MyISAM-Tabelle in den Ram zu packen.
Warum willst du das eigentlich tun? Bedenke das die Daten in der Memory-Engine flüchtig sind, MySQL neustarten oder ein Rechnerabsturz bedeuten den unwiderruflichen Verlust aller Daten.
 

xip

Bekanntes Mitglied
mir gehts hauptsächlich nur um die Performance. Habe derbe Probleme mit dieser.


Wie kann ich den genügend Speicher frei geben?
 

xip

Bekanntes Mitglied
ja, da haste wohl recht, aber so oder so.
Richtig performant wird das ganze wohl eh nur als ENGINE MEMORY.

Da haste denn ja wohl richtig druck. Desshalb interessiert mich schon wie ich das Teil zum laufen bringe. Wenn das Problem mit den Indezies erstmal gelöst werde ich sowas probieren.

lg
 

ice-breaker

Top Contributor
Richtig performant wird das ganze wohl eh nur als ENGINE MEMORY.
Schmarn, ich habe teilweise richtig große DBs und die sind bestimmt nicht in einer Memory-Engine und absolut performant.

Da haste denn ja wohl richtig druck. Desshalb interessiert mich schon wie ich das Teil zum laufen bringe. Wenn das Problem mit den Indezies erstmal gelöst werde ich sowas probieren
deine Größe der Tabelle ist zu groß für den Ram den du MySQL zugeteilt hast, du musst MySQL mehr Ram geben, oder du musst der Memory Engine mit den Optionen MAX_ROWS und AVG_ROW_LENGTH eine bessere Kalkulation des Rams geben, die du brauchst.
 

xip

Bekanntes Mitglied
So, also das mit den MEMORY Tabellen habe ich jetzt so hinbekommen:

Code:
set max_heap_table_size=1024M
dann kann ich einfach einen Table in den RAM Laden in dem ich:
Code:
ALTER TABLE tabelle ENGINE = MEMORY;
wenn die Software fertig ist mache ich es einfach wieder rückgängig und fahre mit dem Dumper einen Backup:
Code:
ALTER TABLE tabelle ENGINE = MYISAM;
aber wie kann ich jetzt eigentlich den RAM Zugriff erhöhen??
in der my.ini/cnf
die key_buffer erhöhen?? Was das schon?
 

xip

Bekanntes Mitglied
das bin ich bereit zu riskieren wenn ich dadurch eine Performancesteigerung hinbekomme.

Und du weist doch, no risk no fun!!
 
M

maki

Gast
das bin ich bereit zu riskieren wenn ich dadurch eine Performancesteigerung hinbekomme.

Und du weist doch, no risk no fun!!
Naja, wenn Datenkonsistenz bzw. richtige Ergebnisse nicht wichtig sind, gibt es keine Grenzen für Optimierungen...

Java:
	public static void main(String[] args) {
		System.exit(0);
	}
:eek:
 
Zuletzt bearbeitet von einem Moderator:

xip

Bekanntes Mitglied
ach komm!!!!!!!

....

davon mal ganz ab, ich betreibe nicht nur irgendwelche PHP Anwendungen die sich auf Datenbanken stützen. Sondern auch rechenlastige JAVA Programme die ich jetzt auf eine Datenbank ausweite.

Der Grund für meine Datenbank ist eine ArrayList. Ab einer gewissen größe spackt das ab. Ich glaube kaum das ich mal locker 20000000 Einträge in sowas speicher kann.

Und wenn da mal was abstürzt für was ich ca 5-6 Stunden Berechnung gebraucht habe, was aber langfristig gesehen, über Zeiträume von vielen Monaten, deutliche Performance steigerung gibt, bin ich gerne bereit dazu das zu opfern.

Darüber hinaus gibs ja noch nen Dumper!!! Der macht Backups!!!
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Fremdschlüssel nutzen. InnoDB <--> MyISAM Datenbankprogrammierung 5
B My-SQL Abfrage - Out Of Memory Error Datenbankprogrammierung 13
R Memory leaks bei DB Abfrage Datenbankprogrammierung 16
D mysql - out of memory error Datenbankprogrammierung 4
M java.sql.SQLException: out of memory Datenbankprogrammierung 18
Tom#234 Jakarta Web Service SQL Access Error Datenbankprogrammierung 7
Kirby.exe Error bei Trigger Datenbankprogrammierung 5
D Hibernate Error: NoSuchMethodError Datenbankprogrammierung 4
thet1983 MySQL Error Code 1111: Invalid use of group function Datenbankprogrammierung 2
M MySQL Error in SQL syntax Datenbankprogrammierung 10
F Java SQLite Error Datenbankprogrammierung 19
dat_vin JavaFX Datenbankverbindung über JPA und MySQL Error Datenbankprogrammierung 0
G SQLLite error code 0x13: constraint failed Datenbankprogrammierung 7
L Conversion-Error bei JDBC Date Literals Datenbankprogrammierung 3
F Java SQL Syntax Error erst nach mehrmaligen Aufrufen Datenbankprogrammierung 3
H SQLite SQLExeption Domain error Datenbankprogrammierung 2
B Error: ORA-00933: SQL command not properly ended Datenbankprogrammierung 5
D Error 1452: Cannot add or update a child row: a foreign key constraint fails Datenbankprogrammierung 15
Cypha JPA Syntax error - falscher Aufbau? Datenbankprogrammierung 3
D SQL Skript "ignore this error" Datenbankprogrammierung 8
GianaSisters MySQL Datenbank Select error Datenbankprogrammierung 5
P [Hibernate] SQL Syntax-Error Datenbankprogrammierung 2
N SQL Query Browser Error Datenbankprogrammierung 6
E try Error Datenbankprogrammierung 2
A Socket write error Datenbankprogrammierung 2
L You have an error in your sql syntax Datenbankprogrammierung 4
D Bean: server internal error Datenbankprogrammierung 5
@ HSQLDB: socket creation error Datenbankprogrammierung 6
C Error in my_thread_global_end() - FehlerMeldung MySql? Datenbankprogrammierung 2
foobar ISAM error: too many files open Datenbankprogrammierung 5
E ERROR: argument of JOIN/ON must be type boolean? Datenbankprogrammierung 2
K Connection error Datenbankprogrammierung 18
R Function Sequence Error - Warum? Datenbankprogrammierung 2

Ähnliche Java Themen

Neue Themen


Oben