Gibt es einen solchen Befehl?
Ich habe my.cnf geändert, und ich möchte MySQL nicht stoppen/starten.
Gibt es einen solchen Befehl?
Ich habe my.cnf geändert, und ich möchte MySQL nicht stoppen/starten.
Soweit ich weiß, müssen Sie Ihren MySQL-Server neu starten, aber es gibt einige Konfigurationsvariablen, die ohne Neustart geändert werden können: dynamische Systemvariablen
Was POSIX anbelangt, SIGHUP (das normalerweise einem Programm, das nach dem Start im Hintergrund läuft, mitteilt, dass es seine Konfiguration neu laden soll) löscht die Privilegien. Referenz aquí . Das ist auch gut so, denn wenn Sie den Dienst im Vordergrund ausführen und die Verbindung unterbrochen wird, möchten Sie wahrscheinlich, dass das passiert.
Damit bleibt uns SIGUSR(1 oder 2) die in der Vergangenheit bekannt für Abstürze den Dienst.
Kurz gesagt, begnügen Sie sich mit den zur Verfügung stehenden Mitteln :) Jedes Mal, wenn Sie es mit einem Dienst zu tun haben, der mehr als primitive IPC ist es eine gute Idee, den Dienst einfach neu zu starten, wenn Sie Konfigurationsänderungen vornehmen. Viele laufende Threads müssen ihre Arbeit abschließen, sterben und neu geboren werden. Ein weiterer Wettlauf zu einer gegenseitigen exklusiven Sperre würde mehr Zeit in Anspruch nehmen als ein einfacher Neustart, da jeder laufende Thread sein Verhalten und sein Verständnis des Universums ändern müsste. in situ . Das führt schnell zum Stillstand und zu einem Zombie-Elternteil.
Beachten Sie, dass die meisten RDBMS ihre eigene Pufferung verwenden, die bei den meisten anderen Diensten vom Kernel übernommen wird. Sie können einen Thread nicht einfach auffordern, Spanisch zu sprechen, wenn er früher Englisch gesprochen hat, oder umgekehrt, je nachdem, was Sie in der Konfiguration geändert haben.
Zumindest nicht, ohne das Elternteil zu reinkarnieren also einfach neu anfangen.
Installieren Sie das RubyGem mysql_manager
( sudo gem install mysql_manager
) und führen Sie dann den Befehl aus:
mysql-manager --reload-my-cnf --reload-my-cnf:config /etc/my.cnf --log:level DEBUG
Für weitere Optionen, führen Sie mysql-manager --help
.
Möglicherweise müssen Sie eine Alternative angeben --db:dsn
, --db:username
, oder --db:password
.
Lesen Sie hier mehr darüber: https://github.com/osterman/mysql_manager
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.