环境:局域网的两台机器,数据库相同
要求:把A机器上面的某些字段的数据和B机器上面某些字段的数据导入到C机器上面来,C机器是本地机器。
局域网sqlmysql数据抽取

解决方案 »

  1.   

    1、用FEDERATED引擎 CREATE TABLE xxx_b ( 
        id    INT(20) NOT NULL AUTO_INCREMENT, 
        username  VARCHAR(32) NOT NULL DEFAULT '', 
        password  VARCHAR(32), 
        PRIMARY KEY  (id) 

    ENGINE=FEDERATED 
    CONNECTION='mysql://broot:[email protected]:3306/dbname/b表'; 2、用MYSQLDUMP导出表数据,再导入
      

  2.   

    方法一:将数据库储存成.sql的脚本文件,让后拷贝过来,再通过命令导入
    方法二:直接拷贝mysql数据下的Data/data 中关于你的数据库文件,粘贴到你需要导入的机器中
    方法三:使用navicat工具,工具-》数据同步  或者数据传输
    方法四:mysqldump功能,操作很简单,自己上网搜索一下就会。
    本人会根据情况选择,工程经验告诉我:
            第一种方法,建议在数据库内容很小的情况下使用,但是跨系统(windows/linux)的话,有可能出现汉字乱码,需要在文件头部加上set name=utf-8,数据库很大的情况下,会比较缓慢,一个1G多的数据库可能需要将近40分钟
            第二种方法,如果Mysql版本不一致,或者文件系统不一致的话,可能报错!但确实是最快的方法
            第三种方法,如果需要导入的系统为windows的话可以使用,速度也相当快!但如果导入的系统为linux的话,本人没有尝试过,貌似也没linux版本的navicat,不做结论。
            第四种方法,貌似也不错。
     根据情况,自己选择吧!