求助,大量数据迁移:从 MS SQL Server 导出 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
2owe

求助,大量数据迁移:从 MS SQL Server 导出

  •  
  •   2owe 2015 年 12 月 14 日 2798 次点击
    这是一个创建于 3786 天前的主题,其中的信息可能已经有所发展或是发生改变。

    合作方说他们用的是 MS SQL Server ,可以很方便地给出 xx.mdfxx_log.ldf 文件,再或者 ACCESS 文件也行。

    我请求对方提供 .sql 或者 .sql.zip 或者 .csv 都被拒绝了啊,对方说:“其实 SQL SERVER 和 ACCESS 已经是最常用的两种格式了”。可是今天之前我确实木有见过 .mdf.mdb 类型的文件呀…

    额,我用的 mbp , google 了一圈也木有找到合适的工具或方法来解析这些数据 (给 mbp 用户丢人了…)。

    其实数据量小也就算了, lz 凭借熟练的 sublime 快捷键技巧就可以搞定。但对方说量很大呀,每行 20 个字段左右,不压缩的数据量约 1T 左右。


    求助各位大大,跟合作方要什么格式好,怎么解析呀?

    12 条回复    2015-12-14 18:21:20 +08:00
    pynix
        1
    pynix  
       2015 年 12 月 14 日   1
    mdf 是 ms 的格式,暂时无法解析吧。
    pynix
        2
    pynix  
       2015 年 12 月 14 日   1
    安装 Windows 解决
    rainex
        3
    rainex  
       2015 年 12 月 14 日   1
    很多年不用细节也记不清了,但大概还记得,那两种文件就是 sqlserver 的数据文件和日志记录

    导入导出也很简单, windows 的控制面板里有 odbc 数据源,只要系统有那种数据库的 odbc 驱动(基本上数据库产品都有 windows 的 odbc 驱动, windows 一般自带 access 等,其它的比如 mysql 的其官网可以下载,这差不多是全世界数据库支持最多的一个数据接口标准了),然后那个界面就可以帮助你导入导出,相当于可以任意转换不同的数据库。

    有些数据库有些特别的约束,那可以灵活的先取消特别的约束(建议你可以本地先装个 sqlserver ,管理器里操作,图形界面),再导出,最后自己再加上。
    loading
        4
    loading  
       2015 年 12 月 14 日 via Android   1
    装虚拟机
    dong3580
        5
    dong3580  
       2015 年 12 月 14 日   1
    @2owe
    这么大,是倒不出来数据的。
    如果不想换成 win ,倒是有个好办法,请求对方写个数据对接 api ,然后对方有个样本的数据内容给你,你这边写个程序从 api 批量或者一条条获取数据。.NET MVC 可以直接生成傻瓜式简单的增删改查 代码,然后部署,只要请求方式合理,也不会有太大的性能问题。
    loading
        6
    loading  
       2015 年 12 月 14 日 via Android   1
    最好就是你过去他们机器,装上你要的数据库,然后导入~或者自己写 python 导入
    2owe
        7
    2owe  
    OP
       2015 年 12 月 14 日
    @pynix @rainex @lading

    先感谢各位的帮助,让我在黑暗中重见光明, m(_ _)m

    回复关于“使用 windows 系统” 的方案:如果是使用视图界面程序的话,由于对方提供的数据文件非常大( 1T 左右),我害怕程序会因为没有优化加载、写入而挂掉…虽然是 Windows 环境,还是倾向于命令行方式…可命令行方式的话,理论上 *nix 环境也会有解决方案才对。

    也许如 @loading 所说, life is hard, why forget Python, :P (原意并不是想要挑起语言战争…)
    2owe
        8
    2owe  
    OP
       2015 年 12 月 14 日
    @dong3580 嗯呐,和对方沟通,求对方给个数据接口。
    izoabr
        9
    izoabr  
       2015 年 12 月 14 日   1
    navicat 做迁移?

    或者你装个 MySQL ,用 MySQL 的迁移工具从 SQL SERVER 迁移到 MySQL ,然后就随便你折腾了吧。
    jarlyyn
        10
    jarlyyn  
       2015 年 12 月 14 日   1
    navicat?

    我被折腾过 sql 的.bak 格式
    heaton_nobu
        11
    heaton_nobu  
       2015 年 12 月 14 日   1
    windows 虚拟机上装 sql server ,直接附加文件就可以了
    bugsnail
        12
    bugsnail  
       2015 年 12 月 14 日   1
    对于会 ETL 的人来说, 1T 也不是很多楼主....

    这样吧, 1T 的数据看你要求也不是很严格, 主要是操作麻烦一点, 建议:

    使用 navicat 的 data transfer 功能, 设置好导数据的方式(最好一小部分,一小部分导)

    就是要一个 mssqlserver 的数据库账号来连接读取, 而且也要看你们那的网络情况.....
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2760 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 46ms UTC 09:22 PVG 17:22 LAX 02:22 JFK 05:22
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86