我有一个 mysql
数据库,它有 30-40 个表。现在我想将它的数据传输到 postgresql
数据库,它的结构不同于 mysql
DB.So 我只想将一些列值传输到 potsgresql
。
我想在 windows 服务器上做。
如何做到?有什么工具吗?
最佳答案
对于选择性迁移,当您想将数据从 MySQL 复制到 Postgres 时,最简单的方法是利用所谓的数据包装器。 https://wiki.postgresql.org/wiki/Foreign_data_wrappers
您需要在您的 Postgres 数据库中创建 mysql_fwd 扩展,定义一个 mysql 服务器和一个用户映射。然后你就可以创建“外部表”,它可以被视为外部数据库的窗口。您可以将它们用于阅读和写作。
CREATE EXTENSION mysql_fdw;
CREATE SERVER mysql_cms
FOREIGN DATA WRAPPER mysql_fdw
OPTIONS (host '192.168.125.206', port '3306');
ALTER SERVER mysql_cms OWNER TO cmsuser;
CREATE USER MAPPING FOR cmsuser SERVER mysql_cms OPTIONS (username 'cmsuser', password '123456');
CREATE SCHEMA mysql_cms AUTHORIZATION cmsuser;
这是一个创建外部表的示例 SQL 命令
CREATE FOREIGN TABLE mysql_cms.video(
id INT,
artist text,
title text)
SERVER mysql_cms
OPTIONS (dbname 'cms', TABLE_NAME 'video');
关于mysql - 将数据从 mysql 数据库传输到 postgresql 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29405619/