У меня есть база данных с именем yourFirstDatabase с несколькими столами. Я хочу клонировать его в другую базу данных yourSecondDatabase вместе со всеми данными.
Теперь у меня есть следующий кусок кода:
exec('mysqldump --user=root --password=root --host=localhost yourFirstDatabase > /var/www/dileep/jiteen/poc/shellPhp/file.sql');
Это создает дамп yourFirstDatabase (названный file.sql). Теперь я хочу получить элементы базы данных из file.sql в yourSecondDatabase
Для этого я использую похожий код:
exec('mysqldump --user=root --password=root --host=localhost yourSecondDatabase < /var/www/dileep/jiteen/poc/shellPhp/file.sql');
Но это не работает нормально, и данные не импортируются в yourSecondDatabase.
Однако, если я вручную импортирую данные из file.sql, данные импортируются отлично. Это означает, что дамп MySQL (первый код) работает нормально, но у второго кода (для извлечения данных) возникают некоторые проблемы.
PS: не показывает никаких ошибок как таковых. Я получил этот код из аналогичного вопроса ОТСЮДА
Любая помощь или предложение приветствуется.
Используйте команду mysql
вместо mysqldump
, Последний предназначен только для производства свалок, а не их импорта.
exec('mysql --user=root --password=root --host=localhost --database=yourSecondDatabase < /var/www/dileep/jiteen/poc/shellPhp/file.sql');
Других решений пока нет …