SQL Server 的 mysqldump 等效项
-
01-07-2019 - |
题
SQL Server 是否有与 MySQL 具有 mysqldump 等效的模式和数据导出/转储工具。试图重新定位旧的 ASP 站点,但我对在 Windows 服务器上工作感到很不高兴。
笔记:DTS 导出实用程序自己似乎可以导出数据,而无需表定义。使用企业管理器并导出数据库与导出架构和数据更加接近......但仍然错过存储过程。
基本上寻找一种万能的解决方案,可以立即获取我需要的一切。
解决方案
最简单的方法是sql server数据库发布向导。
- 开源
- 自由的
- 正是您想要的
- 由微软开发
它没有 mysqldump 的所有功能,但已经足够接近了。
http://www.codeplex.com/sqlhost/wiki/view.aspx?title=database%20publishing%20wizard
其他提示
要使用 SQL Server 2008 Management Studio 轻松完成此操作:
1.) 右键单击数据库(不是表)并选择任务 -> 生成脚本
2.) 单击第一页上的“下一步”
3.) 如果您想复制整个数据库,只需单击“下一步”。如果要复制特定的表,请单击“选择特定数据库对象”,选择所需的表,然后单击下一步。
4.) 应选择“保存到文件”。 重要的: :单击“保存到文件”旁边的“高级”按钮,找到“脚本的数据类型”,然后将“仅限架构”更改为“架构和数据”(如果要创建表)或“仅限数据”(如果您想创建表)正在将数据复制到现有表)。
5.) 单击其余部分即可完成!它将另存为 .sql 文件。
移动数据库的最简单方法是使用 SQL Server Management Studio 将数据库导出到另一台服务器,或者如果这不起作用,请按照其他人的建议进行备份,然后将其还原到其他位置。
如果您正在寻找一种将表结构转储到 SQL 以及为数据创建插入脚本的方法,一个很好的免费选项是使用 amScript 和 amInsert http://www.asql.biz/en/Download2005.aspx.
如果您想要一个好的付费版本,我会查看 Red-Gate SQL Compare 和 Red-Gate SQL-Data Compare。不过,这些工具可能有点过头了,而且如果您不打算经常使用它们,它们可能会有点贵。我认为这主要是由 DBA 负责的。您可以查看 Red-Gate 工具: http://www.red-gate.com/.
由于找不到合适的工具,我决定创建自己的工具:sqlserverdump 命令行实用程序。检查一下 http://sqlserverdump.codeplex.com/.
使用 SMO API 更容易。它可以让你像 mysqldump 一样,甚至更好。这是一个代码示例:
http://samyem.blogspot.com/2010/01/automate-sql-dumps-for-sqlserver.html
嗯,Mysqldump 是一系列 SQL 语句。您可以使用 DTS 来完成此操作,但为什么不直接创建备份并在新计算机上恢复它呢?
如果你想通过 SQL 来完成:http://msdn.microsoft.com/en-us/library/aa225964(SQL.80).aspx
或者只需右键单击数据库并点击“任务”->“备份”(http://msdn.microsoft.com/en-us/library/ms187510.aspx)
最简单的是备份和恢复或分离和附加
或编写所有表的脚本并 BCP 输出数据,然后 BCP 写入新服务器上的数据
或使用 DTS/SSIS 来执行此操作
SQL Enterprise Manager 或 SQL Server Management Studio 具有基于向导的方法,后者将生成脚本,以便您可以查看其完成方式。
您还可以使用 BACKUP 和 RESTORE 命令。更多详细信息请参见此处: http://msdn.microsoft.com/en-us/library/ms189826.aspx
备份/恢复不会做两件事:
- 从Microsoft Server中脱下,这是原始问题的一部分
- 帮助快速找到两个DB之间的结构差异,它们在缓慢运行时应该具有相同的结构。Unix diff或SDIFF忽略了空白,但需要一种制作输入文件的方法。
如果您需要类似 CREATE TABLE 的等效 SQL 语句...& INSERT INTO...,那么我建议你尝试HeidiSQL。它是一个非常棒的免费实用程序,可以访问 Microsoft SQL Server、MySQL 和 PostgreSQL。它使您能够浏览和编辑数据,创建和编辑表、视图、过程、触发器和计划事件。此外,您还可以将结构和数据导出到 SQL 文件。http://www.heidisql.com
转到工具/将数据库导出为 SQL 并选择架构。选中该框以创建表和“插入”数据。就是这样。
与“Microsoft SQL Server Management Studio”或 phpMyAdmin 相比,我更喜欢 HeidiSQL...ETC。