【问题标题】:Can I automatically locate the MySQL executable from PHP?我可以从 PHP 自动定位 MySQL 可执行文件吗?
【发布时间】:2010-07-22 13:03:47
【问题描述】:

我需要运行 Shell_exec 将转储导入我的 MYSQL 数据库。今天我这样做:

$shellExec = 'C:\wamp\bin\mysql\mysql5.1.36\bin\mysql -h localhost -u root mertero_decicare

$out = shell_exec($shellExec .' 2> output');

哪个有效。但是有没有办法从 PHP 中“找到”mysql 可执行文件的位置?所以我不需要硬卡我的 mysql 位置?

罗恩

【问题讨论】:

    标签: php mysql shell-exec


    【解决方案1】:

    一个简单的方法是将它添加到 Windows 环境路径(它在大多数 Unix 系统的路径中)。然后你只需要从脚本中调用 mysql 。

    这是有关如何从 MySQL 执行此操作的信息页面: MySQL Windows Service Start

    在那个页面上你想找到文字

    “为了更容易调用 MySQL 程序,您可以将 MySQL bin 目录的路径名添加到您的 Windows 系统 PATH 环境变量中”

    并通读该部分。使用这种方法,你只需要在没有路径的情况下调用 mysql。

    【讨论】:

    • 谢谢 - 但它并没有真正的帮助,因为我希望我的脚本可以在许多计算机上使用,这需要在“安装”中的另一个步骤,我首先试图避免...
    【解决方案2】:

    在 Windows 上可以添加 C:\wamp\bin\mysql\mysql5.1.36\bin\ 到你的环境变量路径。见:http://en.wikipedia.org/wiki/Environment_variable

    这样你就可以调用 shell_exec('mysql ...');

    或者你不能使用 mysqldump,你可以在 MySQL 中使用 SELECT INTO OUTFILE,尽管你需要对每个表都这样做。不如 mysqldump 优雅。

    【讨论】:

    • 谢谢 - 但它并没有真正的帮助,因为我希望我的脚本可以在许多计算机上使用,这需要在“安装”中的另一个步骤,我首先试图避免...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-25
    • 1970-01-01
    • 1970-01-01
    • 2020-09-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多