Nehmen Sie Änderungen an globalen MySQL-Variablen über Neustarts hinweg dauerhaft vor

8

Ich schreibe eine Anwendung, die versucht, mehrere MySQL-Server remote zu konfigurieren. Ein Teil dieser Konfiguration umfasst das Festlegen globaler MySQL-Variablen mithilfe der folgenden SQL-Syntax:

SET GLOBAL VARIABLE foo=123;

Dies funktioniert gut, dauert aber nur bis zum Neustart des Servers. Was ich möchte, ist eine Möglichkeit, MySQL dazu zu bringen, diese Änderungen in eine options ( .ini) - Datei zu schreiben , sodass sie auch nach einem Neustart des Computers dauerhaft sind.

Ich versuche, die Optionsdateien zu bearbeiten, ohne sie direkt zu öffnen. Ich würde es vorziehen, alles über die MySQL-Verbindung zu erledigen.

Weiß jemand, ob dies möglich ist?

Thomi
quelle

Antworten:

3

set-variable=var_name=valueist die klassische Methode, um dies zu tun my.cnf. Sie können auch die Verwendung von Flags als angeben --set-variable=var_name=value. Vor MySQL 4.0.2 wurden die meisten Konfigurationsoptionen mit dieser Methode festgelegt.

Dies wird in MySQL 5.5 abgeschrieben und sogar entfernt. Die meisten Optionen können mit ihren tatsächlichen Namen in der my.cnf festgelegt werden. Wenn Sie weitere Hilfe benötigen, geben Sie dies bitte genauer an.

Warner
quelle
0

Sie können einfach alle Variablen /etc/mysql/conf.d/mysql.cnf direkt nach [mysqld] zur Datei hinzufügen.

[mysqld]
max_connections=1000
foo=bar

Wenn Sie [mysql] gefunden haben, ersetzen Sie es durch [mysqld]

Mahmoud Abdelhamid
quelle