sql >> Base de Datos >  >> Database Tools >> phpMyAdmin

Protocolo de conexión PhpMyAdmin PIPE

Estoy seguro de que no se ha probado en phpMyAdmin, pero de acuerdo con la escasa documentación de MySQL pude encontrar que parece que debería ser posible especificando $cfg['Servers'][$i]['host'] = '.'; para utilizar la canalización con nombre predeterminada. Supongo que tu connect_type sería 'tcp', pero si eso no funciona, pruebe con 'socket'. Es posible que pueda especificar una canalización con nombre no predeterminada en $cfg['Servers'][$i]['socket'] campo. Si tiene éxito, sería interesante saberlo para la documentación de phpMyAdmin.

Editar:

Las canalizaciones se manejan de manera diferente a una conexión TCP/IP, básicamente una función abstracta de Windows en lugar de una parte de la pila de red. Es posible que me equivoque acerca de la necesidad de usar el campo de host, es posible que deba dejarlo en blanco por completo, pero la documentación del cliente MySQL es clara para usar . como host (o --pipe opción) cuando se utiliza el cliente de línea de comandos de MySQL. Más sobre eso en un momento.

No colocaría el host remoto aquí, porque la canalización con nombre en sí consiste en el nombre del servidor y la canalización como \\ServerName\pipe\mysqlpipe (documentación de Microsoft ), que también tendría que configurar en el servidor MySQL iniciando el servidor con --socket='\\.\pipe\mysqlpipe' o alguna variación cercana de eso (y --enabled-named-pipe por supuesto (Documentación de MySQL )).

Comenzaría probando con el cliente de línea de comandos MySQL en el servidor, una vez que tenga el servicio MySQL en ejecución, intente conectarse desde el cliente de línea de comandos con algo como mysql --pipe --socket=\\.\pipe\mysqlpipe -u root -p (Documentación de MySQL ). Una vez que esté conectado, use el comando SQL STATUS; para verificar su tipo de conexión. Si no puede conectarse desde el cliente de línea de comandos de MySQL en la máquina local, ciertamente no podrá conectarse desde un sistema remoto. Si eso funciona, es hora de probar el cliente de línea de comando remoto o saltar directamente a la conexión phpMyAdmin remota, donde usaría el nombre del servidor en lugar de . en la ruta del socket (que en realidad es la ruta de la canalización con nombre).