Tom: MYSQL: zwei Hauptinstanzen auf einer Maschine

Hello,

was muss ich beachten, wenn ich zwei (oder mehr) MySQL-Server auf einer Mschine starten im mysqld_safe-mode starten will?

Harzliche Grüße aus http://www.annerschbarrich.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau
  1. Hallo, Tom,

    was muss ich beachten, wenn ich zwei (oder mehr) MySQL-Server auf einer Mschine starten im mysqld_safe-mode starten will?

    ich weiss jetzt nicht, ob ich wirklich fragen sollte, aber dennoch:
     "Warum willst Du das machen?"

    (Sollte Sicherheit bei MySQL "im ueblichen Masse" implementiert worden sein, sollte das wirklich nicht erforderlich sein. - Andere Begruendungen fallen mir zumindest im Moment nicht ein.)

    Lass mal hoeren.

    Gruss,
    Ludger

    --
    "Harald Schmidt ist lustig."
    1. yo,

      (Sollte Sicherheit bei MySQL "im ueblichen Masse" implementiert worden sein, sollte das wirklich nicht erforderlich sein. - Andere Begruendungen fallen mir zumindest im Moment nicht ein.)

      es sein den die datenbanken "wollen" verschiedene konfigurationen der instanzen haben. sicherheiten ist viel aber nicht alles.....

      Ilja

      1. Morgen, Ilja,

        (Sollte Sicherheit bei MySQL "im ueblichen Masse" implementiert worden sein, sollte das wirklich nicht erforderlich sein. - Andere Begruendungen fallen mir zumindest im Moment nicht ein.)

        es sein den die datenbanken "wollen" verschiedene konfigurationen der instanzen haben. sicherheiten ist viel aber nicht alles.....

        ich kenne bisher keine DBs, die verschiedene Instanzen haben wollen, also bestimmte Datenserver erwarten.

        Machs doch mal ein wenig konkreter mit einem Beispiel.

        Gruss,
        Ludger

        1. yo,

          Machs doch mal ein wenig konkreter mit einem Beispiel.

          grundsätzlich kommt es auch immer auf das dbms an und welche einstellunngsmöglichkeiten es einem bietet. oracle zum beispiel ist in dieser hinsicht sehr vielseitig, sprich man kann die instanz sehr genau den bedürfnissen der jeweiligen datenbank anpassen. so besitzt orcacle verschienden arten von "speicher" (SGA) die man seinen anforderungen nach anpassen kann. da stehen dann so dinge im hauptspeicher wie die letzten sql befehl schon geparst, ausführungspläne, daten des data dictionary, datensätze, etc.

          ein anderes beispiel wäre zum beispiel der unterschied, ob eine datenbank über das internet abgerufen werden kann mit sehr vielen benutzern oder aber nur intern in einer firma mit eher wenigen benutzern. dafür stellt oracle grundsätzlich zwei verscheinde modi bereit, die unterschiedlich arbeiten. meiner trainer hat uns das immer bildlich als restaurant erklärt. wenn du wenige besucher hast, kannst du jedem gast einen kellner bereitstellen. dadurch gehen die einzelnen bestellungen sehr fix. ist die hütte aber voll, müssen sich mehrere besucher die kellner teilen, da sich kein restaurant so viele kellner wie gäste leisten kann. im IT bereich würde das übertragen bedeuten, man kann nicht für jeden benutzer der datenbank einen eignen prozess aufmachen. und da kann es schon mal zu wartezeiten kommen. so kann der eine modus wenige sehr schnell verarbeiten und der andere modus sehr viele sehr effektiv.

          Ilja

          Ilja

          1. Hi,

            danke! (BTW - Mir ist da noch eingefallen, dass M$ fuer OLTP- und OLAP-DBs unter bestimmten Umstaenden empfiehlt mit verschiedenen Instanzen des Datenservers auf einem Geraet zu arbeiten.)

            Gruss,
            Ludger

          2. Hallo,

            ich hoffe ich kann mal kurz in diesen Thread einsteigen und eine anlehnende Fragwe stellen.

            Wie genau machen da Webhoster, die ihren Kunden Datanbanken zur Verfügung stellen. Das hat mich schon immer interessiert. Also die haben ja in diesen Serverräumen diese Racks, in diesen Racks sind übereinander zig Server. Sind das einzelne Rechner ? Kann man sich das so vorstellen, also ob man zig PCs übereinanderstapelt? Jeder kUnde bekommt dann so ein Ding zugewiesen? Kann doch garnicht sein. Ein Provider hat doch tausende von Kunden. Oder?

            Läuft dann auf jedem Gerät eine Datenbank? Wie das alles funktioniert würde mich sehr interessieren. Könnte mir das mal jemand erklären oder wonach müsste man da googeln ?

            1. Hallo Ilja,

              Wie genau machen da Webhoster, die ihren Kunden Datanbanken zur Verfügung stellen. Das
              hat mich schon immer interessiert. Also die haben ja in diesen Serverräumen diese Racks,
              in diesen Racks sind übereinander zig Server. Sind das einzelne Rechner?

              Ja.

              Kann man sich das so vorstellen, also ob man zig PCs übereinanderstapelt?

              Ja.

              Jeder kUnde bekommt dann so ein Ding zugewiesen?

              Wenn jeder Kunde einen kompletten Server mieten wuerde -- ja. Tut er aber nicht. Also
              bekommt er nur Zugriffe auf bestimmte Bereiche eines Systems.

              Kann doch garnicht sein. Ein Provider hat doch tausende von Kunden. Oder?

              Haengt wohl ziemlich davon ab.

              Läuft dann auf jedem Gerät eine Datenbank?

              Haengt auch davon ab. Wovon? Welcher Provider es ist. Wie die RZ-Architektur ausgelegt ist.
              Uvm.

              Grüße,
               CK

              --
              Der Mund ist das Portal zum Unglück.
              http://wwwtech.de/
              1. Läuft dann auf jedem Gerät eine Datenbank?

                Haengt auch davon ab. Wovon? Welcher Provider es ist. Wie die RZ-Architektur ausgelegt ist.

                Ja, aber was ist denn auf so einen Server in so einem Rack installiert. Ist auf jedem einzelen eine eigene Version von Linux installiert? Und dann nur Verzeichnisse für Kunden mit ihren Unterverzeichnissen ?
                Dann hat also jeder Kunde auf diesen Servern seine eigene mysql Installation ? Aber wenn sich mehrere Kunden solch einen Server teilen, wie funktioniert das dann mit den IPs ? Oder wie werden die Server angesteuert ?

                1. Hallo Anton,

                  Läuft dann auf jedem Gerät eine Datenbank?

                  Haengt auch davon ab. Wovon? Welcher Provider es ist. Wie die RZ-Architektur ausgelegt
                  ist.

                  Ja, aber was ist denn auf so einen Server in so einem Rack installiert. Ist auf jedem
                  einzelen eine eigene Version von Linux installiert?

                  IdR ja. Kann aber auch Windows sein. Oder ein BSD. Oder sonstwas.

                  Und dann nur Verzeichnisse für Kunden mit ihren Unterverzeichnissen ?

                  Bei shared hosting: ja.

                  Dann hat also jeder Kunde auf diesen Servern seine eigene mysql Installation ?

                  Bei shared hosting: nein, nur einen Datenbank-User. Bei Miete eines kompletten
                  Servers: idR ja.

                  Aber wenn sich mehrere Kunden solch einen Server teilen, wie funktioniert das dann mit
                  den IPs ?

                  Es gibt nur eine. Jede Domain zeigt auf den gleichen Server. Dafuer gibt es seit HTTP/1.1
                  ja das Host-Headerfeld.

                  Aber so einfach sind deine Fragen nicht beantwortbar. Vieles liegt schlicht im ermessen des
                  Administrators.

                  Grüße,
                   CK

                  --
                  Nichts zu begehren, das ist der Weg.
                  http://wwwtech.de/
            2. yo,

              jetzt leide ich auch schon unter verfolgungswahn. ist Ilja dein richtiger name oder nimmt mich jemand einfach nur auf den arm....auf der anderen seite freue ich mich ja immer wiewder, mal einen namens-vetter zu begegnen...

              Ilja

              1. Nein habe mich vertippt. Habe wohl deinen Beitrag gelesen und unterbewusst deinen Namen eingetragen. Tut mir leid. Keine Absicht. Ein Glück, dass Freitag ist.

  2. Hallo Tom,

    Hello,

    was muss ich beachten, wenn ich zwei (oder mehr) MySQL-Server auf einer Mschine starten im mysqld_safe-mode starten will?

    Hast Du http://dev.mysql.com/doc/mysql/de/Installing_many_servers.html und http://dev.mysql.com/doc/mysql/de/Multiple_servers.html schon gelesen? Ich habe beide Texte allerdings nur kurz überflogen. Ich habe noch keine zwei Instanzen gestartet und erst recht nicht im mysqld_safe_mode :-)

    Kannst Du uns Dein Szenario genauer schildern? Sollen beide Server getrennte Datenverzeichnisse haben oder nicht, unter welchem OS, welche MySQL-Version? Fragen über Fragen?

    Freundliche Grüsse,

    Vinzenz

    1. Hello,

      was muss ich beachten, wenn ich zwei (oder mehr) MySQL-Server auf einer Mschine starten im mysqld_safe-mode starten will?

      Hast Du http://dev.mysql.com/doc/mysql/de/Installing_many_servers.html und http://dev.mysql.com/doc/mysql/de/Multiple_servers.html schon gelesen? Ich habe beide Texte allerdings nur kurz überflogen. Ich habe noch keine zwei Instanzen gestartet und erst recht nicht im mysqld_safe_mode :-)

      Danke, das hatte ich wirklich noch nicht gefunden, dass es jetzt ausführlich drinsteht. Ich muss da wohl doch mal wieder querlesen, denn mit dem gezielten Suchen in den Manuals von MySQL und Apache stehe ich immer noch auf Kriesfuß, wobei MySQL zugegebenermaßen nun schon ganz vernünftige Suchergebnisse liefert (wenn man noch nicht weiß, wonach man suchen muss).

      Kannst Du uns Dein Szenario genauer schildern? Sollen beide Server getrennte Datenverzeichnisse haben oder nicht, unter welchem OS, welche MySQL-Version? Fragen über Fragen?

      Es ist eben so, dass das MySQL 4 noch eingie (logische) Bugs im Rechtesystem hat, die es einmem Benutzer einer im gemeinsamen Betrieb mit anderen Datenbankbenutzern (anderer DBs) ermöglicht, da ggf. Daen oder zumindest Datenbanknamen und/oder Tabellennamen zu sehen.

      Das gefällt einigen Leuten nicht.

      Wenn man dann gleich getrennte Deamons betreibt, fällt das Problem eben weg. Es kann jeder seinen Konfiguration so haben, wie er will (z.B. Datenbankmodell).

      Harzliche Grüße aus http://www.annerschbarrich.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau
      1. Hi Tom!

        Es ist eben so, dass das MySQL 4 noch eingie (logische) Bugs im Rechtesystem hat, die es einmem Benutzer einer im gemeinsamen Betrieb mit anderen Datenbankbenutzern (anderer DBs) ermöglicht, da ggf. Daen oder zumindest Datenbanknamen und/oder Tabellennamen zu sehen.

        Das habe ich noch nie gehört, kannst Du dafür mal eine Quelle nennen? So ziemlich alle Hosting-Provider haben mehrere Kunden in einem Datenbank-Server. Kann mir nicht vorstellen dass das so gefährlich ist. Entweder ein Benutzer hat das Recht auf eine Datenbank zuzugreifen, oder nicht. Kann das nicht wirklich nachvollziehen.

        Wenn man dann gleich getrennte Deamons betreibt, fällt das Problem eben weg.

        Aber Du handelst Dir ne Menge neuer Probleme ein.

        Es kann jeder seinen Konfiguration so haben, wie er will (z.B. Datenbankmodell).

        Was ist ein "Datenbankmodell"? Jeder Benutzer kann eigene Datenbanken mit eigenen Tabellen... haben. In der Konfiguration werden doch eher so Sachen die den gesamten Server betreffen eingestellt, also Cache-Größen, Kommunikations-Einstellungn, etc.

        Bevor ich sowas mache, würde ich mir erstmal überlegen ob es in so einem Szenario nicht besser ist als erstes mal den Datenbank-Server auf eine zusätzliche Maschine auszulagern, und wenn es dann derart strenge Anforderungren gibt, eben einen 2. Datenbank-Server ebenfalls auf einer dedizierten Maschine zu betreiben.

        Grüße
        Andreas

        --
        SELFHTML Feature Artikel: http://aktuell.de.selfhtml.org/artikel/
        1. Hello,

          Das habe ich noch nie gehört,

          Dann wird es aber Zeit

          kannst Du dafür mal eine Quelle nennen?

          Google und "MySQL Bug LOCK TABLES"

          So ziemlich alle Hosting-Provider haben mehrere Kunden in einem Datenbank-Server. Kann mir nicht vorstellen dass das so gefährlich ist. Entweder ein Benutzer hat das Recht auf eine Datenbank zuzugreifen, oder nicht. Kann das nicht wirklich nachvollziehen.

          Nur weil DU das noch nicht kennst, kann es das Problem doch trotzdem geben.
          Da MySQL 4.x aber bei den Providern noch relativ neu ist, und die Leute (Kunden) i.d.R. sowieso nichts von Datenbanken verstehen, ist der Fehler nicht so publik. Ich kenne jedenfalls keinen Hobby-Programmierer, der sich mit Lockingstrategien auseinandersetzt. Darum schreibe ich ja auch an dem Artikel zum Thema.

          Allerdings nehme ich das "Problem" auch nicht so ernst, wie einige Andere. Ich kann die Namen der fremden Datenbanken zwar sehen, aber nicht hineingucken.

          Wenn man dann gleich getrennte Deamons betreibt, fällt das Problem eben weg.
          Aber Du handelst Dir ne Menge neuer Probleme ein.

          Das ist zu befürchten.

          Es kann jeder seinen Konfiguration so haben, wie er will (z.B. Datenbankmodell).
          Was ist ein "Datenbankmodell"?

          Das Speichermodell für die Datenbank war gemeint. Da habe ich etwas zuwenig Buchstaben getippt ;-)

          Bevor ich sowas mache, würde ich mir erstmal überlegen ob es in so einem Szenario nicht besser ist als erstes mal den Datenbank-Server auf eine zusätzliche Maschine auszulagern, und wenn es dann derart strenge Anforderungren gibt, eben einen 2. Datenbank-Server ebenfalls auf einer dedizierten Maschine zu betreiben.

          Das wäre für mich überhaupt keine Frage, zumal bei Terions ein gut betreuter dicker fetter vServer nur ca. 15 Euro im Monat kostet. Ich bin da seit Jahren zufrieden und kann mir nicht vorstellen, warum sich dann andere (professionelle Anwender) mit shared Hosting rumplagen.

          Harzliche Grüße aus http://www.annerschbarrich.de

          Tom

          --
          Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
          Nur selber lernen macht schlau
          1. Hi!

            kannst Du dafür mal eine Quelle nennen?

            Google und "MySQL Bug LOCK TABLES"

            Hm, bringt mich nicht wirklich weiter, ich finde keinen Bug wie Du ihn beschreibst, habe viellicht auch nicht ausführlich genaug gesucht. Gibt es denn keinen "offiziellen" Bug-Report?

            btw., bemerkenswert dass ich bei google ein Posting(von Dir) gefunden habe, welches gerade mal 6 Tage alt ist, und welches sicherlich erst seit 3-4 Tagen im Forums-Archiv steht...

            Nur weil DU das noch nicht kennst, kann es das Problem doch trotzdem geben.

            Hm. vielleicht... ;-)

            Allerdings nehme ich das "Problem" auch nicht so ernst, wie einige Andere. Ich kann die Namen der fremden Datenbanken zwar sehen, aber nicht hineingucken.

            Es kann jeder seinen Konfiguration so haben, wie er will (z.B. Datenbankmodell).
            Was ist ein "Datenbankmodell"?

            Das Speichermodell für die Datenbank war gemeint.

            Du meinst also die Tabellen und ggfs. Relationen? Das hätte ja nichts mit der Konfiguration zu tun.

            [...] und wenn es dann derart strenge Anforderungen gibt, eben einen 2. Datenbank-Server ebenfalls auf einer dedizierten Maschine zu betreiben.

            Das wäre für mich überhaupt keine Frage, zumal bei Terions ein gut betreuter dicker fetter vServer nur ca. 15 Euro im Monat kostet. Ich bin da seit Jahren zufrieden und kann mir nicht vorstellen, warum sich dann andere (professionelle Anwender) mit shared Hosting rumplagen.

            Jedem das seine. Ich mag z.B. keine vServer ;-)

            Grüße
            Andreas

            --
            SELFHTML Tipps & Tricks: http://aktuell.de.selfhtml.org/tippstricks/
            1. Hello,

              Es kann jeder seinen Konfiguration so haben, wie er will (z.B. Datenbankmodell).
              Was ist ein "Datenbankmodell"?

              Das Speichermodell für die Datenbank war gemeint.
              Du meinst also die Tabellen und ggfs. Relationen? Das hätte ja nichts mit der Konfiguration zu tun.

              Nein, ich meine das Speichermodell (RAM-Verwendung) für die DB. Wenn man viele kleine Sätze hat benötigt man mehr Index-Cache als wenn man nur ein paar Blobs abspeichert. Darüber gibt es eine ganze Seite im MySQL-Manual und einige Muster-Konfigurationen. Aber glaube ja nicht, dass ich das nun finde.

              Harzliche Grüße aus http://www.annerschbarrich.de

              Tom

              --
              Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
              Nur selber lernen macht schlau