由于不小心遗漏了一些外键约束,因此我需要更新架构。
数据库服务器是MySQL 5.1.48,要更改的表是InnoDB。
使用主/从服务器复制服务器。
要正确更改生产数据库架构,我需要知道或要做些什么?
由于不小心遗漏了一些外键约束,因此我需要更新架构。
数据库服务器是MySQL 5.1.48,要更改的表是InnoDB。
使用主/从服务器复制服务器。
要正确更改生产数据库架构,我需要知道或要做些什么?
Answers:
ALTER TABLE
语句是通过二进制日志复制的,与对表进行的任何其他更改相同。事物的复制方面不需要特殊考虑。
我希望这是您所需要的,因为您没有提供足够的详细信息:
A)总是(我的意思是,总是)在尝试对产品进行此类更改之前先进行备份
B)在mysql控制台上:ALTER TABLE fsckeduptable DISABLE KEYS; SET FOREIGN_KEY_CHECKS = 0; ....做你必须做的... SET FOREIGN_KEY_CHECKS = 1; ALTER TABLE yourtablename启用密钥;
C)如果(shit_happened){恢复备份;放弃这个 找到另一种方法} D)如果一切正常,请检查从属服务器上的表(显示创建表),并查看您的修改是否已传播,然后检查使用它的产品应用;如果(shit_happened)参见#C)