0
class Command(BaseCommand):
  args = 'Arguments is not needed'
  help = 'Django admin custom command poc.'

  def handle(self, *args, **options):
        db_alias = options.get('olddb') 
        db_entry = settings.DATABASES.get(db_alias)
        output = open(output_filename,'w')

        cmd = ["mysqldump",
               "-u", db_entry.get('USER'),
               "-p%s" % db_entry.get('PASSWORD'),
               "-h", db_entry.get('HOST'),
               db_entry.get('NAME')]
        subprocess.call(cmd, stdout=output)

在这里,我正在转储我的数据库(olddb)。转储的语法是否正确?我正在以“python manage.py sqldump”的形式运行命令。我当前的数据库中有一个架构。如何将数据迁移到新数据库?我不知道新数据库中存在什么模式。如果出现错误,则在迁移数据时,必须在新数据库中进行回滚。

或任何其他获得更多信息的好文章?

4

1 回答 1

0

如果你搜索 mysqldump,你会发现很多信息。例如:

backup: # mysqldump -u root -p[root_password] [database_name] > dumpfilename.sql

restore:# mysql -u root -p[root_password] [database_name] < dumpfilename.sql

来自:http ://www.thegeekstuff.com/2008/09/backup-and-restore-mysql-database-using-mysqldump/

如果您查看 dumpfilename.sql,您会看到它是一堆用于创建表的 sql 命令,然后 insert 命令将数据插入其中

于 2016-03-31T12:11:11.287 回答