PhpMyAdmin连接协议PIPE [英] PhpMyAdmin connect protocol PIPE

查看:48
本文介绍了PhpMyAdmin连接协议PIPE的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

phpMyAdmin可以使用协议PIPE(无tcp,无套接字)连接到远程主机(Windows)

Can phpMyAdmin connect to a remote host (windows) using protocol PIPE ( no tcp, no socket )

谢谢

推荐答案

我确定它尚未在phpMyAdmin中进行测试,但是根据缺乏的MySQL文档,我发现可以通过指定来找到它$ cfg ['Servers'] [$ i] ['host'] ='.'; 使用默认的命名管道.我想你的 connect_type 是'tcp',但是如果这样不起作用,请尝试'socket'.您可以在 $ cfg ['Servers'] [$ i] ['socket'] 字段中指定非默认命名管道.如果成功,那么了解phpMyAdmin文档将很有趣.

I'm sure it's untested in phpMyAdmin, but according to the scant MySQL documentation I was able to find it looks like it should be possible by specifying $cfg['Servers'][$i]['host'] = '.'; to use the default named pipe. I suppose your connect_type would be 'tcp' but if that doesn't work try 'socket'. You may be able to specify a non-default named pipe in the $cfg['Servers'][$i]['socket'] field. If you have success, it would be interesting to know for the phpMyAdmin documentation.

管道的处理方式不同于TCP/IP连接,基本上是抽象的Windows功能,而不是网络堆栈的一部分.我可能根本就不需要使用host字段,可能是您需要将其完全留空,但是MySQL客户端文档显然可以使用.作为主机(或<使用MySQL命令行客户端时使用code>-pipe 选项).稍后再详细介绍.

Pipes are handled differently than a TCP/IP connection, basically an abstracted Windows feature rather than a part of the networking stack. I may be mistaken about needing to use the host field at all, it may be that you need to leave it blank entirely, but the MySQL client documentation is clear to use . as the host (or the --pipe option) when using the MySQL command line client. More on that in a moment.

您不会将远程主机放在这里,因为命名管道本身由服务器名称和管道组成,例如 \\ ServerName \ pipe \ mysqlpipe ( MySQL文档)).

You wouldn't put the remote host here, because the named pipe itself consists of the server name and pipe such as \\ServerName\pipe\mysqlpipe (Microsoft documentation), which you would also have to configure on the MySQL server by starting the server with --socket='\\.\pipe\mysqlpipe' or some close variation of that (and --enabled-named-pipe of course (MySQL documentation)).

我将首先在服务器上使用MySQL命令行客户端进行测试,一旦运行了MySQL服务,请尝试使用 mysql --pipe --socket = \\之类的命令从命令行客户端进行连接.\ pipe \ mysqlpipe -u根-p ( MySQL文档).建立连接后,使用SQL命令 STATUS; 验证您的连接类型.如果无法从本地计算机上的MySQL命令行客户端进行连接,则肯定无法从远程系统进行连接.如果可行,是时候尝试使用远程命令行客户端或直接跳转到远程phpMyAdmin连接了,您将在其中使用服务器名而不是套接字路径中的..管道路径.)

I'd start by testing with the MySQL command line client on the server, once you have the MySQL service running try connecting from the command line client with something like mysql --pipe --socket=\\.\pipe\mysqlpipe -u root -p (MySQL documentation). Once you're connected, use the SQL command STATUS; to verify your connection type. If you can't connect from the MySQL command line client on the local machine, you certainly won't be able to connect from a remote system. If that works, it's time to try either the remote command line client or jump right to the remote phpMyAdmin connection, where you'd use the servername instead of . in the socket path (which is really the named pipe path).

这篇关于PhpMyAdmin连接协议PIPE的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆