gpt4 book ai didi

mysql - 关于MySQL数据库迁移的问题

转载 作者:搜寻专家 更新时间:2023-10-30 23:23:40 24 4
gpt4 key购买 nike

如果我在一台实时服务器上有一个包含多个表的 MySQL 数据库,现在我想将该数据库迁移到另一台服务器。当然我这里说的迁移涉及到一些数据库表,比如:给几个表增加一些新列,增加一些新表等等。 现在,我能想到的唯一方法是使用一些 php/python(我知道的两个脚本)脚本,连接两个数据库,从旧数据库转储数据,然后写入新数据库。然而,这种方法根本没有效率。例如:在旧数据库中,表 A 有 28 列;在新数据库中,表 A 有 29 列,但额外列的所有旧行的默认值为 0。我的脚本仍然需要逐行转储数据并将每一行插入到新数据库中。

使用 MySQLDump 等是行不通的。这是细节。例如:我有四个旧数据库,我可以将它们命名为“DB_a”、“DB_b”、“DB_c”、“DB_d”。现在旧表 A 有 28 列,我想将表 A 中的每一行添加到新数据库中,并使用新的列 ID“DB_x”(x 表示它来自哪个数据库)。如果我无法通过行的内容区分数据库 ID,那么我唯一可以识别它们的方法是通过一些用户输入参数。

有没有比自己编写脚本更好的工具或方法?在这里,我不需要担心多线程写入问题等..,我的意思是旧数据库将关闭(不开放使用等..,仅用于升级)一段时间。

谢谢!!

最佳答案

我不完全理解您对列的情况(在迁移后添加任何新列不是更明智吗?),但可以说跨服务器复制数据库的最快方法之一是 mysqlhotcopy .它只能复制 myISAM 并有许多其他要求,但速度非常快,因为它完全跳过了创建转储/导入转储步骤。

关于mysql - 关于MySQL数据库迁移的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2678668/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com