Hinweise zu MySQL: Unterschied zwischen den Versionen

Aus SiteparkWiki
Zur Navigation springen Zur Suche springen
Zeile 27: Zeile 27:
 
  # Alle Daten aller InnoDB-Datenbanken in einer Datei (<code>ibdata</code>) gespeichert werden,
 
  # Alle Daten aller InnoDB-Datenbanken in einer Datei (<code>ibdata</code>) gespeichert werden,
 
  # kann diese initial sofort entsprechend eingestellt werden. Die stete Vergrößerung kostet unnötige Resourcen
 
  # kann diese initial sofort entsprechend eingestellt werden. Die stete Vergrößerung kostet unnötige Resourcen
  innodb_data_file_path = ibdata1:3G:autoextend
+
  # Diese Option kann nachdem bereits Datenbanken des Typs InnoDB angelegt wurden nicht mehr verändert werden!
 +
#innodb_data_file_path = ibdata1:1G:autoextend
 
   
 
   
 
  # Wenn Sie diese Setzung vor dem Anlegen der ersten InnoDB-Datenbank vornehmen, werden alle Tabellen aller
 
  # Wenn Sie diese Setzung vor dem Anlegen der ersten InnoDB-Datenbank vornehmen, werden alle Tabellen aller
 
  # Datenbanken in einzelne Dateien geschrieben (vgl. MyISAM). Das geht aber nicht mehr, wenn bereits Tabellen existieren!
 
  # Datenbanken in einzelne Dateien geschrieben (vgl. MyISAM). Das geht aber nicht mehr, wenn bereits Tabellen existieren!
  innodb_file_per_table
+
  #innodb_file_per_table
 
   
 
   
 
  # Cache-Setzungen für InnoDB. Wählen Sie hier eine Poolgröße, die nicht größer als 50-80% des Speichers ist.
 
  # Cache-Setzungen für InnoDB. Wählen Sie hier eine Poolgröße, die nicht größer als 50-80% des Speichers ist.

Version vom 15. Februar 2010, 12:56 Uhr

Initialisierung

Es ist wichtig, dass ein Root-Passwort für den MySQL-Server gesetzt wird

mysqladmin password geheim

Unter Debian müssen für den MySQL root-Nutzer noch weitere Rechte gesetzt werden

mysql -u root -pgeheim mysql> GRANT ALL ON *.* TO 'root'@'localhost.localdomain' IDENTIFIED BY 'geheim' WITH GRANT OPTION;

Konfiguration

Die Verbindung zu MySQL über den TCP-Port muss freigegeben werden. Lokale Sockets funktionieren nicht.

Hierzu müssen folgende Setzungen mind. erfüllt sein:

#skip-networking
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1

Da der IES den transaktionssicheren Datenbanktyp InnoDB verwendet empfehlen sich Anpassungen an folgenden Opionen (my.cnf):

Bitte wählen Sie hier Größenordnungen, die auf Ihre Hardware abgestimmt sind. Wenn Sie unsicher sind welche Setzungen zu verwenden sind, sprechen Sie uns bitte an. Wir werden Ihnen dann entsprechende Erfahrungswerte nennen können.

# Größe des MySQL-Keys (Optimiert die Suche)
key_buffer              = 256M
# MySQL-Paket-Größen gegen an, wie groß ein Statement werden darf (z.B. bei optimierten Dumps)
max_allowed_packet      = 16M

# Alle Daten aller InnoDB-Datenbanken in einer Datei (ibdata) gespeichert werden,
# kann diese initial sofort entsprechend eingestellt werden. Die stete Vergrößerung kostet unnötige Resourcen
# Diese Option kann nachdem bereits Datenbanken des Typs InnoDB angelegt wurden nicht mehr verändert werden!
#innodb_data_file_path = ibdata1:1G:autoextend

# Wenn Sie diese Setzung vor dem Anlegen der ersten InnoDB-Datenbank vornehmen, werden alle Tabellen aller
# Datenbanken in einzelne Dateien geschrieben (vgl. MyISAM). Das geht aber nicht mehr, wenn bereits Tabellen existieren!
#innodb_file_per_table

# Cache-Setzungen für InnoDB. Wählen Sie hier eine Poolgröße, die nicht größer als 50-80% des Speichers ist.
# Bei nicht 64Bit-Systemen darf der Wert 2GB nicht überschreiten.
innodb_buffer_pool_size=1G
innodb_additional_mem_pool_size=20M

Weitere Informationen zur Optimierung finden Sie u.a. hier: http://www.mysqlperformanceblog.com/2007/11/01/innodb-performance-optimization-basics/