使用kohana从phpmyadmin生成的SQL转储创建表

使用kohana从phpmyadmin生成的SQL转储创建表,php,phpmyadmin,kohana,Php,Phpmyadmin,Kohana,我在一个文件中有一个PHPMyAdmin SQL转储。我想用PHP来执行这个SQL。我怎么能这么做?我尝试了一个简单的查询(有Kohana,但没有它就足够了!),但是我得到了一个语法错误。 我怎么能这么做 $sql = file_get_contents('sql_dump.sql'); mysql_query($sql); 我考虑过使用Kohana的Db::query(Database::INSERT,$sql)->execute(),但我不确定它是否有效。试试看。这与科哈纳无关。我建议您

我在一个文件中有一个PHPMyAdmin SQL转储。我想用PHP来执行这个SQL。我怎么能这么做?我尝试了一个简单的查询(有Kohana,但没有它就足够了!),但是我得到了一个语法错误。 我怎么能这么做

$sql = file_get_contents('sql_dump.sql');

mysql_query($sql);

我考虑过使用Kohana的
Db::query(Database::INSERT,$sql)->execute()
,但我不确定它是否有效。试试看。

这与科哈纳无关。我建议您不要通过PHP这样做,因为这样会有内存和时间限制。如果可以,请使用终端

mysql -u [username] -p [password] [database name] < [filename.sql]
mysql-u[username]-p[password][database name]<[filename.sql]

用各自的值替换
[value]

我同意像素开发者的观点。但是,您可以使用PHP启动命令,例如:

$result=shell_exec(“mysql-h{$hostname}-u{$username}-p{$password}{$database}<$input_file”);

漂亮而简单。“这会不会也会保留断线呢?”马克·斯图德尔(MarkSteudel)应该这样做:)@thomas在什么地方?PHP还是SQL?@thomas没有理由不这样做。如果我使用共享主机而不能使用shell怎么办如果我使用shred主机而不能使用shell_exec()怎么办
$result = shell_exec("mysql -h {$hostname} -u {$username} -p {$password} {$database} < $input_file");