假设我创建了一个MySQL数据库(在封装的本地开发环境中):
$ mysql -uroot -proot -e "create database FOO"
导入SQL转储:
$ mysql -uroot -proot FOO < /var/tmp/BAR.sql
现在我只需从同一来源重新导入更新的转储:
$ mysql -uroot -proot FOO < /var/tmp/FUBAR.sql
问题:这是一种简单导入最新数据的可靠方法吗?现有的表会被覆盖吗?据我所知,这似乎没问题。或者我应该总是首先删除数据库,重新创建它,然后导入更新的转储?
答案 0 :(得分:0)
取决于转储文件。如果它有DROP TABLE IF EXISTS
和CREATE TABLE
语句,它将覆盖表。但它也可以做SQL允许你做的任何其他事情 - 改变表,只插入数据等。
我认为没有什么不可靠的。