Как я могу вывести и восстановить базы данных MySQL к и из Dropbox из командной строки?

У меня есть несколько баз данных MySQL, которые я хотел бы синхронизировать между двумя компьютерами. То, что я хотел бы сделать, смочь иметь быструю команду или сценарий на одном компьютере, который я могу использовать для быстрого дампа баз данных к папке на моем Dropbox. Затем имейте подобный сценарий восстановления, который я могу использовать для перезаписи существующей базы данных по второму компьютеру.

Первый шаг кажется легким. Я могу создать быстрое .sql файл со следующей командой:

mysqldump -u root -p mydatabase > /home/dave/Dropbox/MySQL/mydatabase.sql

Это - другая сторона, где я испытываю затруднения. По-видимому, MySQL легко не позволит мне перезаписать содержание существующей базы данных с новым содержанием. Я попробовал два подхода, и ни один не работал.

Сначала я попробовал mysqlimport, но это просто рыгнуло набор инструкций о том, как использовать команду, и после оглядывания в сети, кажется, что это вызвано тем, что это просто не перезапишет базу данных:

$ mysqlimport -u root -p mydatabase < /home/dave/Dropbox/MySQL/mydatabase.sql

Таким образом, я пытался сначала отбросить базу данных, но я получил следующую ошибку:

$ mysqladmin -u root -p drop mydatabase
Enter password: 
Dropping the database is potentially a very bad thing to do.
Any data stored in the database will be destroyed.
Do you really want to drop the 'mydatabase' database [y/N] y
mysqladmin: DROP DATABASE mydatabase failed;
error: 'Error on delete of './mydatabase//db.opt' (Errcode: 13)'

Разве нет ли просто команда, которую я могу использовать для взятия базы данных, которую я вывел от одного компьютера, и имейте его, перезаписывают его дубликат на другом компьютере? Эти базы данных являются в основном тем же в каждом отношении, за исключением небольшие ежедневные изменения, которые я вношу.

3
задан 1 September 2014 в 07:44

1 ответ

Я верю всему, что необходимо сделать, выполняют следующее:

 mysql -u root -p[root_password] [mydatabase] < mydatabase.sql

mydatabase должен существовать, чтобы сделать это; в противном случае создайте его с помощью create database mydatabase

2
ответ дан 18 November 2019 в 05:00

Другие вопросы по тегам:

Похожие вопросы: