从不同主机将数据从Postgresql传输到Mysql(从RoR数据库到Wordpress数据库)

问题描述:

这里我遇到了这个问题。从不同主机将数据从Postgresql传输到Mysql(从RoR数据库到Wordpress数据库)

在这里,我们有一个用RoR编写的完整系统的主机,其中有大量的用户数据进入Postgresql数据库。

然后,在一个单独的本地主机中,我们有一个运行某些应用程序并使用buddypress插件(允许自定义字段)的wordpress页面,当然还使用MySQL数据库。

我需要什么是:将用户数据从Postgresql数据库传输到MySQL数据库。我知道可以通过在数据库中插入数据来在Wordpress中创建用户,但我需要查询从第一个数据库传输相同的用户数据。

我一直在用cronjob与思考。 (只是当他们是两个不同的主机并且必须使用mysql_connect和pg_connect时,不确定如何执行查询)。

我在postgresql中用我需要迁移的数据创建了一个视图。

我也被建议尝试“Navicat”,但不确定它是否可以做我确切需要做的事情。

会走什么路?谢谢。

,如果你能同时访问数据库,你可以写两个类,一个来自mysql衍生和其他从postgres

例:

#config/database.yml 
development: &DEV 
    adapter: postgresql 
    host: localhost 
    database: postgresql_db 
    username: 
    password: 

wordpress: &WORDPRESS 
    adapter: mysql2 
    host: localhost 
    username: 
    password: 
    database: wordpress 
wordpress_development: 
    <<: *DEV 

,你可能必须为WordPress

一个基类
class WordpressBase < ActiveRecord::Base 
    WordpressRecord.establish_connection({ 
    adapter: "mysql2", 
    host:  ENV['MYSQL_HOST'], 
    username: ENV['MYSQL_USER'], 
    password: ENV['MYSQL_PASS'], 
    database: ENV['MYSQL_DB'] 
    }) 

    self.abstract_class = true 
end 

现在您可以使用正常的活动记录来迁移数据

例如:

class A < ActiveRecord::Base 
    # connects to your postgres 
end 

class B < WordpressBase 
    # connects to your mysql 
end