我正在为我的MySQL数据复制相关问题寻找解决方案。 我在包含一些数据的数据库DB1中有一个表TAB1。现在我想将其中一些数据行迁移到另一个表TAB2到另一个数据库DB2。
为MySQL服务器编写这样一个SQL脚本的理想方法是什么。我无法编写java / php程序等因为我无法访问代码库。
任何示例链接都会有所帮助。我知道这可以通过DBLink在Oracle中完成,但是如何在MySQL中完成。
由于
答案 0 :(得分:6)
insert into db2.table2 (field1,field2,..,fieldN)
select field1,field2,..,fieldN from db1.table1
编辑。如果您需要在两个不同的数据库之间进行更新,这是正确的语法:
update
db2.table2 as t2,
db1.table1 as t1
set
t2.field1 = t1.field1,
t2.field2 = t1.field2,
t2.field3 = t1.field3
where t1.id = t2.id
答案 1 :(得分:3)
如果两个数据库都在同一台服务器上,那么最简单的方法是使用INSERT INTO... SELECT
查询
INSERT INTO
database2.table2 (c1, c2, c3)
SELECT
c2, c4, MD5(c3) --you can choose only these columns that are needed as well as use functions to convert data to required format if needed
FROM
database1.table1
答案 2 :(得分:0)
答案 3 :(得分:0)
这会将所有数据从一个表复制到另一个表(MySQL)
INSERT INTO `databse_name`.`tablename_copy`
SELECT *
FROM `databse_name`.`tablename` ;
如果设置主键,则会产生一些问题。请检查主键重复错误