首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何管理大型Server数据库:事务日志、缩小大小、更改表

如何管理大型Server数据库:事务日志、缩小大小、更改表
EN

Database Administration用户
提问于 2012-02-17 11:26:27
回答 1查看 1.2K关注 0票数 0

你好,我对如何管理大型Server数据库有些困惑。

假设大小为15 3GB,可用3GB,采用简单恢复模式。

服务器不是由我管理的,我不能更改大小,甚至不能暂时更改,也不能分离/重新附加备份/还原。

假设我只能管理数据和数据库的结构。

如果我想修改一个表,添加一个列,或者只删除某些行(在datetime之前),或者希望空出几个nvarchar(MAX)列以节省空间,这有什么影响呢?

我经常收到错误“没有更多的日志空间”。

然后我缩小了数据库,什么都没变,空间也变少了.

我不需要事务日志,那么我能做些什么来执行这些操作,而不会出现有关事务日志大小的错误消息呢?

谢谢!

EN

回答 1

Database Administration用户

发布于 2012-02-18 04:44:06

各点,不按特定顺序排列:

  • 您确实需要事务日志,原因很多,我不打算讨论。也就是说,如果在简单恢复模式下事务日志空间耗尽,这可能意味着您有长期运行的事务。使您的事务尽可能短(在启动事务之前收集所有所需的用户输入)。(当Server试图释放日志空间时,它只能释放到最古老的当前事务的开始。)
  • 使NVARCHAR(MAX)列为空并不一定会为您节省很大的空间(在我的头顶上,每列为2字节/行)。
  • 删除/归档旧数据将对您有所帮助--但必须首先通过事务日志。
  • 缩小数据库无助于您,事实上它会降低性能(在运行时和之后,因为DBCC SHRINKDATABASE使用了一种天真的算法,它几乎完美地分割了您的索引),而且如果有任何空间的话,也不会给您带来太大的损失。
票数 5
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/13365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档