网站有两个数据库,一个本地测试数据库,一个线上生产数据库。
最初上线时,数据库结构是一样的。
后来本地测试数据库修改了增删改了很多结构,那这时如何同步到线上数据库呢?
网站有两个数据库,一个本地测试数据库,一个线上生产数据库。
最初上线时,数据库结构是一样的。
后来本地测试数据库修改了增删改了很多结构,那这时如何同步到线上数据库呢?
可以把改变的结构生成sql语句,然后放在线上执行。类似于:
ALTER TABLE `shop_goods_comment` DROP INDEX idx_orderId_goodsId_uid;
ALTER TABLE `shop_goods_comment` ADD `skuId` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '商品skuid';
7 回答5.4k 阅读
6 回答7k 阅读✓ 已解决
8 回答6.4k 阅读
3 回答2k 阅读✓ 已解决
5 回答3.3k 阅读✓ 已解决
2 回答3.9k 阅读✓ 已解决
2 回答3.3k 阅读✓ 已解决
如果并非太多人协作的项目,其实不用什么工具也是可以的,一个控制就好了。因为一般情况下,除了第一次上线,会大批量创建更新表结构,其他情况下最多是建几个表,在开发项目的时候实时做好记录。
当然也可以使用一些比较工具自动生成 SQL,但如果同时几个项目并行开发,就可能存在开发环境的修改并不是你当前项目的修改,同样,这也是需要团队一起确认的。不一定那么方便。
如果是完全的微服务架构,使用工具会出现问题的概率会低很多。并且因为是微服务,不用工具,直接记录改动,也是很方便的。总的来说,想仅靠工具解决问题也并不是那么容易。