我有两个*.sql
文件,我在创建新网站数据库时使用它们.第一个文件创建所有表.第二个文件填充一些默认记录.我想从PHP执行这些文件.我还使用Zend_框架,如果这有助于实现这一点的话.
Additional Info
- 我没有控制台
- 我正在try 从应用程序中自动生成站点.
SOLUTION
用shell_exec()
...
$command = 'mysql'
. ' --host=' . $vals['db_host']
. ' --user=' . $vals['db_user']
. ' --password=' . $vals['db_pass']
. ' --database=' . $vals['db_name']
. ' --execute="SOURCE ' . $script_path
;
$output1 = shell_exec($command . '/site_db.sql"');
$output2 = shell_exec($command . '/site_structure.sql"');
...我从来没有得到有用的输出,但在another thread上跟随了some suggestions,最终使它全部工作.我将命令转换为--option=value
格式,并使用--execute="SOURCE ..."
而不是<
来执行文件.
而且,我从来没有得到一个很好的解释shell_exec()
和exec()
之间的区别.