MySQL Cache
-
- Beiträge: 50
- Registriert: 18.08.2007 18:25:03
- Wohnort: Chemnitz
MySQL Cache
Hallo zusammen,
nachdem mir hier in diesem Forum bei meinen Linux Problemen bisher immer kompetent geholfen wurde, habe ich nun eine Frage zum MySQL-Cache.
Ich arbeite zur Zeit an einer Datanbankanwendung mit 3Mio+ Datensätzen. Um die Performance der Abfragen zu erhöhen habe ich den MySQL-Cache aktiviert. Funktioniert auch alles einwandfrei und gecachte Abfragen sind in ca. 1-2 Sekunden erledigt. Sobald ich aber den Rechner neu starte ist der Cache wieder leer und die Abfragen dauern teilweise 30-40 Sekunden. Gibt es eine Möglichkeit die gecachten Abfragen über einen Neustart hinaus zu behalten?
greetz
der Bitverdreher
nachdem mir hier in diesem Forum bei meinen Linux Problemen bisher immer kompetent geholfen wurde, habe ich nun eine Frage zum MySQL-Cache.
Ich arbeite zur Zeit an einer Datanbankanwendung mit 3Mio+ Datensätzen. Um die Performance der Abfragen zu erhöhen habe ich den MySQL-Cache aktiviert. Funktioniert auch alles einwandfrei und gecachte Abfragen sind in ca. 1-2 Sekunden erledigt. Sobald ich aber den Rechner neu starte ist der Cache wieder leer und die Abfragen dauern teilweise 30-40 Sekunden. Gibt es eine Möglichkeit die gecachten Abfragen über einen Neustart hinaus zu behalten?
greetz
der Bitverdreher
-
- Beiträge: 50
- Registriert: 18.08.2007 18:25:03
- Wohnort: Chemnitz
Also verstehe ich das richtig, das die Abfragen nur im Speicher abgelegt werden und nicht in einem Verzeichniss auf der Festplatte?
Ich hatte schon in der my.cnf die "tmpdir" Option auf ein anderes Verzeichniss als /tmp umgestellt weil ich dachte das dort die gecachten Abfragen liegen und /tmp ja bei einem Neustart auch gelöscht wird. Das neue Verzeichnis blieb aber leer.
Kann man dem MySQL-Server beibringen den Cache auf die Festplatte zu schreiben? Oder würde dann die Performance wieder soweit einbrechen das der Cache nichts bringt?
Ich hatte schon in der my.cnf die "tmpdir" Option auf ein anderes Verzeichniss als /tmp umgestellt weil ich dachte das dort die gecachten Abfragen liegen und /tmp ja bei einem Neustart auch gelöscht wird. Das neue Verzeichnis blieb aber leer.
Kann man dem MySQL-Server beibringen den Cache auf die Festplatte zu schreiben? Oder würde dann die Performance wieder soweit einbrechen das der Cache nichts bringt?
-
- Beiträge: 50
- Registriert: 18.08.2007 18:25:03
- Wohnort: Chemnitz
Weil es sich hierbei nur um meine Entwicklungsumgebung (Lokaler PC)handelt. Ich operiere eben nicht gern am lebenden Patienten rum. Und der muss ja nicht die ganze Nacht durchlaufen. Da habe ich schon viel zu oft das böse erwachen bekommen. Das Live-System läuft natürlich 24/7 durch. Dort gibt es auch nicht das Problem mit dem Cache. Es ist nur nervig wenn die ersten Abfragen bis zu 40 Sekunden und teilweise sogar noch länger brauchen.
-
- Beiträge: 50
- Registriert: 18.08.2007 18:25:03
- Wohnort: Chemnitz
Vom Programm her wäre das kein Problem auf einen anderen Server als localhost zu connecten. Ich habe aber aus Sicherheitsgründen die Firewall auf dem Live-Server nach aussen für den MySQL-Server dicht gemacht. Und für eine bestimmte IP öffnen geht bei dynamischen IP´s auch nicht bzw. müsste ich ja dann jeden Tag die Firewall neu konfigurieren.
Da kommt mir aber gerade noch eine Idee::idea:
Wenn ich den lokalen Server in einer VM laufen lasse und diese VM nicht mit dem Host runterfahre, sondern den aktuellen Zustand speicher. Dann müsste doch der RAM der VM beim fortsetzen wieder zurückgeschrieben werden und der Cache ist wieder da?
Werde ich morgen gleich mal probieren.
Da kommt mir aber gerade noch eine Idee::idea:
Wenn ich den lokalen Server in einer VM laufen lasse und diese VM nicht mit dem Host runterfahre, sondern den aktuellen Zustand speicher. Dann müsste doch der RAM der VM beim fortsetzen wieder zurückgeschrieben werden und der Cache ist wieder da?
Werde ich morgen gleich mal probieren.
-
- Beiträge: 50
- Registriert: 18.08.2007 18:25:03
- Wohnort: Chemnitz