我有一个SQL Server数据库,在过去5年里已经增长到超过15GB。现在我的问题是磁盘空间和运行每日备份所需的时间。我想知道的是如何在不丢失数据的情况下存档旧记录并减小数据库的大小?
提前致谢。
答案 0 :(得分:2)
15GB不是很大,应该可以快速备份,即使没有doing anything special。由于磁盘空间比几乎任何其他技术资源(尤其是开发人员或DBA时间)便宜得多,因此您需要询问是否真的值得设计归档解决方案,或者只购买更多磁盘。
更重要的是,“归档”对你意味着什么?如果您将数据移动到其他位置,它仍将占用空间,您将不得不购买和维护该空间。把它放在磁带或DVD上是否可以忘记它,或者你会不时被要求它?如果是这样,当用户请求时,可以接受的频率和延迟是多少?您是否需要遵守任何法律规定?数据是否仍然可以在您的应用程序中可见但只是存储在不同的磁盘上?如果是这样,拆分数据是否有意义?
答案 1 :(得分:0)
我正在研究类似的问题,如何在主数据库中获得“实时”数据,在第二个数据库中获得“已完成”数据。
我们当前的自助卷解决方案是一个自定义应用程序,用于将数据从实时数据库序列化/反序列化到存档数据库,为我们提供了两个连接字符串来访问新数据和旧数据。
我们对内置解决方案的调查已经提出了横向分区。
http://msdn.microsoft.com/en-gb/library/ms178148%28v=sql.105%29.aspx
这不会将数据视图限制为用户,但允许您按日期在物理磁盘之间拆分数据。