2014-01-10 65 views
3

我打算使用RedGate Compare 10来比较两个数据库,并创建第三个具有所需差异的数据库。我拥有两个备份,每个备份1GB,并且我在本地服务器上设置了一个SQL Server 2012以使用RedGate。问题是我必须使用.sql文件创建数据库,但这些文件非常大,以至于当我执行脚本时:如何在SQL Server 2012上运行1 GB .sql文件?

  1. 通过导入向导:耗尽内存。
  2. 通过sqlcmd:耗尽内存。

    sqlcmd -S [servername] -d [databasename] -i [scriptfilename] -a 32767 -x 
    

我使用的机器上的Windows 7,4GB内存,2.3GHz的酷睿i5运行。有没有办法在服务器上创建两个1GB数据库,或者唯一的选择是使用更好的机器,我需要多少升级?

+0

是否有可能将文件分成块?像你插入2000行,并把一个去声明,然后另一个2K行...当然,你可以使用一些工具来做分裂工作... – Rex

+0

我不知道如何做到这一点,或者如果甚至分裂将是内存支持。因为这样一个大文件不能通过文本编辑打开。 – BlizzardAlpha

+1

关于分裂大型文件,一些参考(但我从来没有尝试过......):http://superuser.com/questions/94083/how-to-split-large-file-on-windows – Rex

回答

0

看看CSV Splitter - 它是免费的软件,它可以让你决定添加到每个文件的行数。

+0

不是我在找什么。 :(我已经创建了大量的sql文件,并且没有改变它,如果我将它分成一些随机的行号(因为我无法打开它),它肯定会搞砸了这个命令。 – BlizzardAlpha