gpt4 book ai didi

mysql - 将行从一个数据库复制到另一个数据库

转载 作者:行者123 更新时间:2023-11-29 00:02:06 25 4
gpt4 key购买 nike

我有两个具有相同模式 (dev/prod) 的数据库托管在不同的机器(和不同的主机)上。

是否有任何机制或工具可以让我对一个数据库中的特定行进行选择并将它们插入另一个数据库?

最佳答案

您可以使用 MySQL 的 FEDERATED存储引擎:

The FEDERATED storage engine lets you access data from a remote MySQL database without using replication or cluster technology. Querying a local FEDERATED table automatically pulls the data from the remote (federated) tables. No data is stored on the local tables.

因此,要创建一个连接:

CREATE TABLE federated_table (
id INT(20) NOT NULL AUTO_INCREMENT,
name VARCHAR(32) NOT NULL DEFAULT '',
other INT(20) NOT NULL DEFAULT '0',
PRIMARY KEY (id),
INDEX name (name),
INDEX other_key (other)
)
ENGINE=FEDERATED
DEFAULT CHARSET=latin1
CONNECTION='mysql://fed_user@remote_host:9306/federated/test_table';

定义了这样一个表之后,您就可以执行 INSERT ... SELECT如您所愿:

INSERT INTO federated_table SELECT * FROM local_table WHERE ...

或者

INSERT INTO local_table SELECT * FROM federated_table WHERE ...

如果您联合来自同一服务器的多个表,您可能希望使用 CREATE SERVER相反。

关于mysql - 将行从一个数据库复制到另一个数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29309148/

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