phpMyAdmin
 sql >> Base de Dados >  >> Database Tools >> phpMyAdmin

Protocolo de conexão PhpMyAdmin PIPE


Tenho certeza de que não foi testado no phpMyAdmin, mas de acordo com a escassa documentação do MySQL, consegui descobrir que deve ser possível especificando $cfg['Servers'][$i]['host'] = '.'; para usar o pipe nomeado padrão. Suponho que seu connect_type seria 'tcp', mas se isso não funcionar, tente 'socket'. Você pode especificar um pipe nomeado não padrão no $cfg['Servers'][$i]['socket'] campo. Se você tiver sucesso, seria interessante conhecer a documentação do phpMyAdmin.

Editar:

Os pipes são tratados de forma diferente de uma conexão TCP/IP, basicamente um recurso abstrato do Windows em vez de uma parte da pilha de rede. Posso estar enganado sobre a necessidade de usar o campo host, pode ser que você precise deixá-lo totalmente em branco, mas a documentação do cliente MySQL é clara para usar . como o host (ou o --pipe opção) ao usar o cliente de linha de comando MySQL. Mais sobre isso em um momento.

Você não colocaria o host remoto aqui, porque o próprio pipe nomeado consiste no nome do servidor e no pipe, como \\ServerName\pipe\mysqlpipe (documentação da Microsoft ), que você também teria que configurar no servidor MySQL iniciando o servidor com --socket='\\.\pipe\mysqlpipe' ou alguma variação próxima disso (e --enabled-named-pipe é claro (documentação do MySQL )).

Eu começaria testando com o cliente de linha de comando MySQL no servidor, uma vez que você tenha o serviço MySQL em execução, tente conectar-se a partir do cliente de linha de comando com algo como mysql --pipe --socket=\\.\pipe\mysqlpipe -u root -p (documentação do MySQL ). Uma vez conectado, use o comando SQL STATUS; para verificar seu tipo de conexão. Se você não puder se conectar a partir do cliente de linha de comando MySQL na máquina local, certamente não poderá se conectar a partir de um sistema remoto. Se isso funcionar, é hora de tentar o cliente de linha de comando remoto ou ir direto para a conexão phpMyAdmin remota, onde você usaria o nome do servidor em vez de . no caminho do soquete (que é realmente o caminho do pipe nomeado).