Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Importowanie bazy.
Forum PHP.pl > Forum > Przedszkole
Gruchol
Witam,
Czy istnieje polecenie MySQL, PHP które zaimportuje bazę która jest w katalogu na ftp ?
Szukałem ale nic nie znalazłem.
Z góry dziękuję i pozdrawiam.
fklar
Jeśli masz dane zrzucone do pliku .sql to tam znajdują się zapytania, które wystarczy wykonać.
Wczytaj plik w PHP (file, file_get_contents, fread itp.) a potem użyj mysql_query. Możesz też skorzystać z gotowego narzędzia BigDump - http://www.ozerov.de/bigdump/
Gruchol
Zrobiłem to tak :
  1. $db = mysql_connect('localhost', 'root', '');
  2. mysql_query("CREATE DATABASE $nazwa",$db);
  3. mysql_select_db ("$nazwa");
  4. $baza=file_get_contents("baza.sql");
  5. mysql_query("$baza",$db);
  6. }


I wyświetla się : Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in E:\XAMPP\htdocs\index.php on line 30

30 linia to :
  1. $db = mysql_connect('localhost', 'root', '');


Jak to mogę jeszcze inaczej zrobić ?
fklar
Użyj mysqli_ zamiast mysql_ http://php.net/manual/pl/function.mysqli-connect.php
Gruchol
Tylko się zastanawiam jak to zrobić, ponieważ muszę utworzyć nową bazę więc połączenie typu
$db = mysqli_connect('localhost', 'root', '', 'dbname'); nie może być.

A czy dało by radę tak zrobić przez SSH ?
Tzn. PHP wysłało by polecenie do SSH i tam by się ta baza zaimportowała ?
Idzie w ogóle tak zrobić ?
Jeżeli chodzi o PHP+SSH jestem kompletnie zielony i nawet nie wiem jak by miało to wyglądać.
Aqu
Robisz połączenie bez tego ostatniego parametru, czyli nazwy bazy.
Tworzy nową bazę za pomocą myqsli_query('CREATE DATABASE name'), a potem ją wybierasz przez mysqli_select_db
Gruchol
Aqu zrobiłem tak jak napisałeś jednak baza się nie importuje :/
Można zrobić takie coś ale przy pomocy PHP i SSH ?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.