windows cmd连接到远程mysql dbf

时间:2009-09-08 06:37:44

标签: windows mysql batch-file cmd

有没有办法如何连接到远程服务器上的mysql dbf并使用Windows命令行运行SQL查询?

4 个答案:

答案 0 :(得分:3)

是的,您可以通过运行mysql -h 123.45.67.89来连接到其他主机。 请注意,存在一些安全隐患:

  1. 您必须授予自己访问权限。您需要运行类似GRANT ALL on db_name.table TO user@your_ip IDENTIFIED BY 'password'的内容。 db_nametableyour_ip可以是*,但请注意向黑客开放服务器。
  2. 如果您不在同一个LAN上,则必须打开服务器的防火墙。同样,ymmv,你应该意识到不要打开利用的大门。
  3. 您可能希望使用SSL并使用secure-auth来保护您的流量和凭据。
  4. 希望有所帮助。

答案 1 :(得分:2)

MySQL有一个命令行客户端,您可以在其中运行查询。如果您不希望允许远程连接到服务器上的数据库,您仍然可以将事物编写为批处理。有命令行telnet / ssh客户端,它们接受外部文件作为远程运行的命令列表,或者你可以将输入流重定向(少于符号)传递给它们。

打开与服务器的连接时 - 大多数客户端都已编程,因此指定登录密码的唯一方法是从键盘输入(是的,他们不使用默认输入流)。这样的事情很难编写脚本。但是,可以在SSH上设置基于证书的登录 - 您实际上必须对此进行研究。

如果托管MySQL数据库的服务器也是一个Web服务器 - 您还可以考虑在密码保护区域放置一些脚本(PHP,Perl,Python,Ruby - 无论你喜欢什么),这样你就可以执行通过简单地对该脚本进行HTTP(S)查询来进行查询。虽然Windows没有命令行HTTP(S)客户端,但您始终可以获得类似 wget.exe 的内容并使用它执行查询。请注意,如果您选择此方法 - 我强烈建议将该脚本置于HTTPS下 - 如果被恶意用户发现,则可能对您的数据造成致命。

答案 2 :(得分:0)

如果您想要更安全,可以使用telnet或SSH。

答案 3 :(得分:0)

如果MySQL在Linux或BSD上运行,则需要通过putty

之类的方式建立Telnet或SSH连接

这将在远程服务器上打开命令行。该命令是 mysql 。围绕远程用户的身份验证会出现问题(如您所料)。

如果远程服务器运行的是Windows,则会出现一系列不同的问题。

我不确定您是否可以连接到远程Windows服务器并以这种方式控制它。

应该说我不确定你如何连接到远程Windows服务器并以这种方式使用它。但毫无疑问,这是可能的。