php hangs when auth_socket is set for the user
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- C
- Sterne
- 40.4k
- Forks
- 8.1k
- Ø Merge
- 2 T. 13 Std.
- Gemergte PRs (30 T.)
- 96
Beschreibung
Description
The following code:
<?php
$mysqli = new mysqli("localhost", "root", "...", "mysql");
echo $mysqli->host_info . "\n";
with a local MySQL 8.4 User like this:
*************************** 6. row ***************************
Host: localhost
User: root
...
plugin: auth_socket
Results in php hanging until MySQL timeouts instead of connecting to MySQL
Changing the auth plugin to caching_sha2_password solves the situation. I did not test what happens when I don't set the password or explicitly use the socket.
PHP Version
PHP 8.4.1 (cli) (built: Nov 25 2024 18:04:19) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.4.1, Copyright (c) Zend Technologies
with Zend OPcache v8.4.1, Copyright (c), by Zend Technologies
Operating System
Ubuntu 24.04
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, das mysqli-Konstruktorbeispiel gegen MySQL 8.4 auf Ubuntu 24.04 zu reproduzieren, wobei der Benutzer für auth_socket konfiguriert ist, und vergleiche es anschließend mit caching_sha2_password sowie den ausdrücklich erwähnten Socket- und Passwortvarianten. Verfolge den Verbindungsablauf, bis der Hänger auftritt; abgeschlossen ist die Aufgabe, wenn der auth_socket-Fall ein definiertes Verhalten ohne Hängen aufweist oder eine bestätigte Korrektur mit einem Regressionstest vorliegt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- mysql, php
- Bereich
- database
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100