2010-12-13 52 views

Répondre

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

mysql_query($sql); 

Je pensais à l'aide de Db::query(Database::INSERT, $sql)->execute() Kohana, mais je ne suis pas sûr si cela va fonctionner. Essayez-le.

+0

Nice et simple. Est-ce que cette ligne de préservation se brise aussi? –

+0

@Mark Steudel Il devrait faire :) – alex

+0

Je reçois une erreur de syntaxe ... – thomas

2

Eh bien, cela n'a rien à voir avec Kohana. Je vous recommande de ne pas le faire via PHP car vous avez alors des contraintes de mémoire et de temps. Si vous le pouvez, utilisez le terminal.

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

Remplacement de [value] avec leurs valeurs respectives.

+0

+1 pour la meilleure façon de le faire. – alex

+0

que se passe-t-il si je suis sur un hébergement partagé et que je ne peux pas utiliser le shell –

0

Je suis d'accord avec The Pixel Developer. Cependant, vous pouvez utiliser PHP pour initier la commande en utilisant shell_exec Par exemple:

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

et si je suis sur l'hébergement de shred et que je ne peux pas utiliser shell_exec() –