Datenbanken Spiegeln

MySQL, PostgreSQL, SQLite
JessiA
Posts: 49
Joined: 2003-02-07 17:07

Datenbanken Spiegeln

Post by JessiA » 2003-05-11 17:23

Kann man eine MySQL Datenbank in eine Andere Spiegeln z.b. den inhalt von usr_web1_1 nach usr_web2_1?
Wenn ja wie lautet der befehl.

floschi
Userprojekt
Userprojekt
Posts: 3247
Joined: 2002-07-18 08:13
Location: München

Re: Datenbanken Spiegeln

Post by floschi » 2003-05-11 19:41

Wie spiegeln?

Du kannst natürlich mysqldump nutzen und mit mysql wieder einlesen... man hilft weiter ;)

Außerdem verschiebe ich ins Datenbankforum...

flo
Posts: 2223
Joined: 2002-07-28 13:02
Location: Berlin

Re: Datenbanken Spiegeln

Post by flo » 2003-05-11 23:01

Code: Select all

mysqldump --add-drop-table -uuser -ppass -hhost database | mysql  -uuser2 -ppass2 -hhost2 database2
Grüße,

flo.

JessiA
Posts: 49
Joined: 2003-02-07 17:07

Re: Datenbanken Spiegeln

Post by JessiA » 2003-05-12 14:11

thx
Du kannst natürlich mysqldump nutzen und mit mysql wieder einlesen
Ich habe gemeint, dass ich eine Datenbank spiegeln will.
Mein Server wurde gecrackt und alle Dateien gelöscht.
Da ich die Datenbank nicht im StandartPfad liegen habe, hat der Angreifer sie nicht gefunden.
Deshalb will ich aus sicherheitsgründen die Datenbnak per Cronjob jede halbe Stunde Spiegeln lassen.

hbaes
Posts: 70
Joined: 2002-10-08 21:04

Re: Datenbanken Spiegeln

Post by hbaes » 2003-05-12 16:15

also:
unter spiegel verstehe ich persönlich: das fortwährende Kopieren der Datenbanken auf einen 2. MySQL Server.
-> und ja, das geht.

zu dem was Du vorhast (lokale Datendoppelthaltung):
was bringt es dir wenn die Daten am gleichen Host doppelt vorhanden sind ?
die liegen dann normalerweise auch noch unter dem gleichen Verzeichnis
also zB.: /var/mysql/usr_web1_1 und /var/mysql/usr_web1_2 ..

??

JessiA
Posts: 49
Joined: 2003-02-07 17:07

Re: Datenbanken Spiegeln

Post by JessiA » 2003-05-12 18:06

Die sollen schon auf einen anderen Server gespiegelt werden.

outofbound
Posts: 470
Joined: 2002-05-14 13:02
Location: Karlsruhe City

Re: Datenbanken Spiegeln

Post by outofbound » 2003-05-12 18:11

Hi,

suchtipp: Binary Logs...

in einem der letzten PHP Magazine war da ein netter Artikel drin.

Beispiele: (To get you on your way)

http://www.phpbuilder.com/columns/tanov ... hp3?page=2

http://www.mysql.com/doc/en/Replication_HOWTO.html

Gruss,

Out

oxygen
Posts: 2138
Joined: 2002-12-15 00:10
Location: Bergheim

Re: Datenbanken Spiegeln

Post by oxygen » 2003-05-12 19:08

Da gibts 2 Möglichkeiten
1.
per Cronjob Backup machen.
Siehe hier zu auch:
http://www.rootforum.org/faq/index.php? ... d=76&lang=

Das Script ließe sich einfach an eine höhere Frequenz z.B. einmal in der Stunde anpassen. Hier würde dann aber besonders bei großen Datebanken ein erhöhter Traffic anfallen, da jedes mal ein Fullbackup gemacht wird. Hierzu reicht ein einfacher anderer Rechner z.B. zu Hause. Also Schutz vor Datenverlust reicht das vollkommen aus. Dann sollte auf jedenfall --extended durch --medium-check oder --quick ersetzt werden.
--check-only-changed wäre auch eine Möglichkeit.
2.
Replikation
Dazu folgendes: http://www.mysql.com/doc/de/Replication.html
Hier wäre aber ein 2. MySQL-Server notwendig. Ã?ber den verbrauchten Traffic kann ich keine Aussage machen, sollte aber nicht viel sein. Nachteil: Lahm. Lohnt sich eigentlich nur, wenn der 2. MySQL-Server aktiv benutzt wird, z.B. auch auf diesem Rechner Webserver + Script installiert ist.

outofbound
Posts: 470
Joined: 2002-05-14 13:02
Location: Karlsruhe City

Re: Datenbanken Spiegeln

Post by outofbound » 2003-05-12 19:19

@øxygen:

In diesem Thread wurde der Begriff Replikation schon durch "Spiegeln"
ausgetauscht.

Normalerweise sind bei MySQL die Binary Logs relativ klein, da tatsächlich nur die Ã?nderungen der Datenbank "versendet" werden.
Auch das Umschalten von einer "defekten" auf die "Alternative" Datenbank ist relativ einfach, also von Vorteil wenn man nur kurze "Downtimes" der Datenbank haben will, da man in den Scripten
selbst schon einen "Check" einbauen kann...

Ich stimme dir Allerdings zu, dass das einfach Backupen der Daten
für die meisten User dieses Forums ausreichen sollte. Eine zusätzliche Stufe Sicherheit (Betreffend Konsistenz von Daten) erhält man, wenn man
die DB kurz vor Backupen runter fährt und danach wieder hoch.

Als "Power"- Lösung für Hochperformante Anwendungen würde ich eine Replikation fahren, und von dieser dann Backups machen sowie Arbeitsintensive (Lese!)Operationen ausführen. So stört man den Betrieb des "richtigen" Servers nicht, kann die "Backupdatenbank" bei belieben runter und wieder hoch fahren und stört seine Besucher nicht mit langen
Wartezeiten oder Downtimes beim erstellen von Statistiken o.ä.
Denn bei der Replikation hat man schliesslich die Möglichkeit, dass Replizieren danach wieder "aufzuholen". ;)

Mit "mysql binary logs" oder "mysql replikation" findet man bei google.de jede Menge Infos, die einen an das Thema heran und auch in die Tiefe hinein führen ;)

Ã?brigens: Die Replikation ist Trafficschonender auf lange Zeit, bei einer 100 MB Datenbank jedes mal den Dump runterziehen fällt flach... man schnappt sich nur die Ã?nderungen in den Binary Logs, welche sehr klein sind noch dazu, und sich auch über eine DSL nach Hause ziehen lassen.

Gruss,

Out