Клонирование базы данных MySQL с использованием переполнения стека

У меня есть база данных с именем 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: не показывает никаких ошибок как таковых. Я получил этот код из аналогичного вопроса ОТСЮДА
Любая помощь или предложение приветствуется.

0

Решение

Используйте команду mysql вместо mysqldump, Последний предназначен только для производства свалок, а не их импорта.

exec('mysql --user=root --password=root --host=localhost --database=yourSecondDatabase < /var/www/dileep/jiteen/poc/shellPhp/file.sql');
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]