1

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

$shellExec = 'C:\wamp\bin\mysql\mysql5.1.36\bin\mysql -h localhost -u root mertero_decicare < D:\localhost\sql\decisions.sql';

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

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

罗恩

4

2 回答 2

1

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

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

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

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

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

于 2010-07-22T13:15:22.470 回答
0

在 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那么优雅。

于 2010-07-22T13:14:02.253 回答