【发布时间】:2010-10-30 02:00:52
【问题描述】:
在 oracle 数据库中,命令“host”可用于从数据库命令窗口运行 bash 命令。 mySql中是否有与“host”等效的命令?
【问题讨论】:
在 oracle 数据库中,命令“host”可用于从数据库命令窗口运行 bash 命令。 mySql中是否有与“host”等效的命令?
【问题讨论】:
【讨论】:
实际上可以通过使用MySQL Proxy(向下滚动到“来自 MySQL 客户端的 Shell 命令”部分)通过客户端连接(而不是在客户端计算机上本地执行命令)在运行 mysqld 的服务器上执行 shell 命令)。
【讨论】:
在 linux 机器上你应该可以使用下面的例子
注意:在 ! 之前添加反斜杠
【讨论】:
我在 Linux 上运行版本 5.0.95-log。以“system”或“!”作为命令的前缀适用于“pwd”和“ls -l”命令。如果我尝试使用例如更改目录,例如
mysql> 系统cd /home/mydir
该命令似乎已被接受。但这显然没有任何作用,因为遵循“pwd”和“ls -l”命令表明我仍在同一个目录中。因此,似乎为此内置了一个有限功能的存根,但我们实际上并没有对系统 shell 的完全访问权限。
【讨论】:
system 命令的每个实例都有一个单独的外壳。所以如果你能以某种方式把它们锁起来......
作为额外的调整,在大多数“'nix”系统上,您实际上可以执行以下操作:
mysql> system bash
您可以随意使用整个航站楼。如果您在与 MySQL 接口的终端中进行代码工作,这将特别有效;在 shell 中,输入“exit”将带你回到 MySQL 监视器/客户端,所以你可以很容易地来回切换。
显然,其他 shell(“mysql> system tcsh”)也可以工作。
【讨论】: