mysqldump等效于SQL Server

时间:2008-09-17 16:44:23

标签: sql-server windows data-migration

是否存在等效架构&用于SQL Server的数据导出/转储工具,因为MySQL具有mysqldump。试图重新定位一个遗留的ASP站点,我在使用Windows服务器时处于开心的地方。

注意:DTS导出实用程序自己似乎导出数据,没有表defs。 使用企业管理器并导出数据库与导出架构和放大器的关系越来越近数据...但仍然错过了存储过程。

基本上寻找一个可以解决所有我需要的东西的解决方案。

11 个答案:

答案 0 :(得分:17)

使用SQL Server 2008 Management Studio非常轻松地执行此操作:

1。)右键单击数据库(而不是表格),然后选择任务 - >生成脚本

location of tool

2.。)在第一页上单击“下一步”

3.。)如果要复制整个数据库,只需单击“下一步”。如果要复制特定表,请单击“选择特定数据库对象”,选择所需的表,然后单击“下一步”。

4。)应选择“保存到文件”。 重要:单击“保存到文件”旁边的“高级”按钮,找到“脚本数据类型”,然后将“仅模式”更改为“模式和数据”(如果要创建表格) )或“仅数据”(如果您要将数据复制到现有表格)。

adding data to the script

5.点击其余部分,你就完成了!它将保存为.sql文件。

答案 1 :(得分:10)

移动数据库的最简单方法是使用SQL Server Management Studio将数据库导出到另一台服务器,或者如果不起作用,请像其他人建议的那样进行备份并将其恢复到别处。

如果您正在寻找一种将表结构转储到SQL以及为数据创建插入脚本的方法,那么一个好的免费选项就是使用来自http://www.asql.biz/en/Download2005.aspx的amScript和amInsert。

如果你想要一个好的付费版本,我会查看Red-Gate SQL Compare和Red-Gate SQL-Data Compare。这些工具可能有点过分,如果你不打算大量使用它们可能有点贵。我认为它主要会降级为DBA。您可以在http://www.red-gate.com/处查看Red-Gate工具。

答案 2 :(得分:10)

最简单的方法是使用sql server数据库发布向导。

  • 开源
  • 完全符合您的要求
  • 由microsoft开发

它没有mysqldump的所有功能,但它足够接近。

http://www.codeplex.com/sqlhost/wiki/view.aspx?title=database%20publishing%20wizard

答案 3 :(得分:6)

找不到合适的工具,我决定创建自己的工具:sqlserverdump命令行实用程序。请查看http://sqlserverdump.codeplex.com/

答案 4 :(得分:2)

更容易使用SMO API。它可以让你完全像mysqldump,甚至更好。这是一个代码示例:

http://samyem.blogspot.com/2010/01/automate-sql-dumps-for-sqlserver.html

答案 5 :(得分:1)

好吧,Mysqldump是一系列SQL语句。您可以使用DTS执行此操作,但为什么不创建备份并在新计算机上还原它?

如果你想通过SQL做到这一点: http://msdn.microsoft.com/en-us/library/aa225964(SQL.80).aspx

或者只需右键单击数据库并点击任务 - >备份(http://msdn.microsoft.com/en-us/library/ms187510.aspx

答案 6 :(得分:0)

最简单的是备份和恢复或分离和附加

或编写所有表格并将BCP输出数据,然后在新服务器上的数据中使用BCP

或使用DTS / SSIS执行此操作

答案 7 :(得分:0)

SQL企业管理器或SQL Server Management工作室具有基于向导的方法,后者将生成脚本,以便您可以看到它是如何完成的。

您还可以使用BACKUP和RESTORE命令。更多细节:http://msdn.microsoft.com/en-us/library/ms189826.aspx

答案 8 :(得分:0)

如果您可以使用DTS或Integration Services连接到两个服务器,则可以使用向导将“对象”从一个服务器“复制到另一个服务器”。 “复制数据库”要求两个服务器可以相互进行身份验证,这通常意味着位于同一个域中,并且该服务在域登录下运行。

否则,您可以为架构生成脚本,并且可以使用Integration Services / DTS包将数据导出到文件,然后将其导入到另一个文件中。

我们现在通常使用SQL CompareSQL Data Compare。红门的SQL Packager也可能是一种选择。

答案 9 :(得分:0)

备份/恢复不会做的两件事:

  1. 离开Microsoft服务器,哪个 是原始问题的一部分
  2. 帮助快速找到结构差异 应该在两个DB之间 其中一个具有相同的结构 他们跑得很慢。 Unix差异, 或者sdiff,忽略了空白但是 需要一种方法来制作输入文件。

答案 10 :(得分:0)

如果您需要等同的SQL语句,例如CREATE TABLE ...& INSERT INTO ...,然后我建议你试试HeidiSQL。这是一个非常棒的免费工具,可以访问Microsoft SQL Server,MySQL和PostgreSQL。它使您可以浏览和编辑数据,创建和编辑表,视图,过程,触发器和计划事件。此外,您可以将结构和数据导出到SQL文件。 http://www.heidisql.com

转到Tools / Export database as SQL并选择架构。 选中该框以创建表格并“插入”数据。就是这样。

我更喜欢HeidiSQL到“Microsoft SQL Server Management Studio”或phpMyAdmin ......等。