运行我们的集成测试时,从源代码创建空数据库的时间是一个问题。有什么“技巧”来加速创建数据库对象吗?如何加速创建表,索引和存储过程
回答
在adddition,考虑不创建数据库(分离/附加空单),除非这是你的测试的一部分。
并获取SSD服务器上的驱动器的SSD。没有什么比原始IO好。
我建议你为此编写(或生成)一个脚本,然后在db服务器上执行这个脚本......这比用代码远程执行要快得多。
您也可以检查以确保您打开了即时文件初始化。您必须确保SQL Server服务帐户在服务器上具有“执行卷维护任务”权限。
我还包含此链接更充分说明:http://www.sqlskills.com/blogs/paul/post/How-to-tell-if-you-have-instant-initialization-enabled.aspx
这对于数据非常少的数据库会有什么不同吗? – 2011-04-08 19:25:58
对不起,有一段时间没有来过。这可能会有所作为。考虑一下你的数据文件。您可以初始化任意大小的数据库,只使用整个空间的一小部分。或者在创建新对象并添加新数据时,您可以翻身并触发自动增长。如果该自动增长设置较高,则即使只需要一小部分,也必须等待所有磁盘被初始化。 – Matt 2011-04-28 12:58:55
我从脚本创建一个空的数据库,并从脚本中填充它。我一天做几十次,因为我经常运行我的测试。我的本地实例在我的工作站上运行需要几秒钟的时间。也许你可以得到一个更快的盒子?
当然,我的数据库只有几千个对象,所以你的里程可能会有所不同。
- 1. 为存储过程中创建的表添加索引
- 2. 如何在存储过程中创建过滤索引(SQL Server)
- 3. Sybase存储过程 - 如何在#table上创建索引?
- 4. 存储过程如何处理索引?
- 5. 加速sql存储过程
- 6. 如何从存储过程中创建存储过程
- 7. 存储过程/表索引改进
- 8. 如何创建存储过程laravel
- 9. 如何创建Sybase存储过程
- 10. 如何创建存储过程
- 11. 如何用hibernate创建存储过程?
- 12. 如何创建存储过程?
- 13. 如何创建存储过程?
- 14. 如何快速创建索引?
- 15. 存储过程不会创建新表
- 16. 创建存储过程 - SQL
- 17. Magento:创建存储过程
- 18. 如何存储和检索neo4j索引
- 19. 存储过程与创建表/视图/索引&选择在单个SP
- 20. GAE数据存储索引未创建
- 21. 如何将存储过程添加到已创建的edmx中?
- 22. 如何创建存储过程来创建数据库
- 23. 如何创建一个返回表的存储过程?
- 24. 如何为日志表创建存储过程
- 25. 如何使用存储过程创建TEMP表
- 26. 如何加速插入Azure表存储?
- 27. 如何使用select和update创建存储过程
- 28. 如何创建和调用MySQL存储过程?
- 29. 如何在mongoDB中创建和重用存储过程(存储的javascripts)
- 30. 使用存储过程创建存储过程
它没有加速很多RAM磁盘,所以我不认为SSD会有很大帮助。 – 2011-04-08 19:24:29