Das Verhalten dieser Funktionen wird durch Einstellungen in der php.ini beeinflusst.
Name | Vorgabe | Änderbar | Changelog |
---|---|---|---|
mysql.allow_persistent | "1" | PHP_INI_SYSTEM | |
mysql.max_persistent | "-1" | PHP_INI_SYSTEM | |
mysql.max_links | "-1" | PHP_INI_SYSTEM | |
mysql.trace_mode | "0" | PHP_INI_ALL | Verfügbar ab PHP 4.3.0. |
mysql.default_port | NULL | PHP_INI_ALL | |
mysql.default_socket | NULL | PHP_INI_ALL | Verfügbar ab PHP 4.0.1. |
mysql.default_host | NULL | PHP_INI_ALL | |
mysql.default_user | NULL | PHP_INI_ALL | |
mysql.default_password | NULL | PHP_INI_ALL | |
mysql.connect_timeout | "60" | PHP_INI_ALL | PHP_INI_SYSTEM in PHP <= 4.3.2. Verfügbar ab PHP 4.3.0. |
Hier eine kurze Erklärung der Konfigurationsoptionen:
gibt an, ob persistente Verbindungen zu MySQL gestattet werden sollen.
Die maximale Anzahl von persistenten MySQL Verbindungen pro Prozess.
Die maximale Anzahl von MySQL Verbindungen, einschließlich persistenter, pro Prozess.
Falls mysql.trace_mode aktiviert ist, werden Warnungen für Tabellen/Index Scans, nicht freigegebene Ergebnismengen und SQL-Fehler angezeigt. (Eingeführt in PHP 4.3.0)
Gibt die Portnummer an, über den die Verbindung zum MySQL-Server aufgebaut werden soll, wenn kein Port als Verbindungsparameter übergeben wurde. Wird die Portnummer nicht angegeben, wird der Port über die MYSQL_TCP_PORT Umgebungsvariable, dem mysql-tcp Eintrag aus der Datei /etc/services oder der compile-time Konstanten MYSQL_PORT festgelegt, in genau dieser Reihenfolge. Win32 Systeme verwenden nur die Konstante MYSQL_PORT.
Legt den Socketnamen fest, der bei der Verbindung zu einem lokalen Datenbankserver bennutzt werden soll, wenn kein anderer Name angegeben wurde.
Legt den Datenbankserver fest, zu dem eine Verbindung aufgebaut werden soll, wenn kein Server angegeben wurde. Diese Option hat im Safe Mode keine Auswirkungen.
Legt den Benutzernamen fest, der bei einer Verbindung zu einer Datenbank verwendet werden soll, wenn kein Benutzer angegeben wurde. Diese Option hat im Safe Mode keine Auswirkungen.
Legt das Passwort fest, das bei einer Verbindung zu einer Datenbank verwendet werden soll, wenn kein Passwort angegeben wurde. Diese Option hat im Safe Mode keine Auswirkungen.
Verbindungstimeout in Sekunden. Auf Linuxsystemen wird dieser Timeout auch für die erste Antwort des Servers benutzt.
you can also easily work around the issue if you simply create a symbolic link to the socket by executing the following in terminal:
sudo mkdir /var/mysql
sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock
[EDIT BY danbrown AT php DOT net: Typo spotted by (asterizk AT me DOT com) - "should probably say 'sudo ln -s ...'"]
mysql_default_socket can take a filename as the argument. By default--at least with the default configuration provided by Mac OS X 10.5--it is /var/mysql/mysql.sock. If necessary, you can edit your php.ini to change it to /tmp/mysql.sock.