小编Alb*_*ert的帖子

SQL Server 2008 表维护 - 重建、重组、更新统计信息、检查完整性等

我正在将一个约 15GB 的数据库从 SQL Server 2005 迁移到运行 SQL Server 2008 的新服务器,同时我需要创建所有新的维护计划。我可以处理所有备份的东西,但表维护让我有些困惑。有没有人对我应该多久(或者你多久做一次就足够了)以下任务有任何意见?

  • 检查数据库完整性
  • 重建索引
  • 重组索引
  • 更新统计
  • 收缩数据库?

我错过了什么吗?再说一次,如果您能分享您执行这些任务的频率,那就太好了……和/或分享有关您的表格维护方法的任何一般信息,这将很有帮助。最后,我以什么顺序运行这些任务(在设置作业时)是否重要?

哦,我愿意接受任何可能有帮助的链接!

sql-server-2005 sql-server-2008 maintenance

6
推荐指数
1
解决办法
9656
查看次数

恢复 SQL Server 数据库 - 提示和技巧?

在还原 SQL Server 数据库方面,有人有任何提示和技巧吗?

我最近将 .bak 从一台服务器/实例恢复到另一台,在两台服务器/实例上都使用 SQL Server 2005,并且遇到了以下问题(到目前为止):

所有身份插入值都重置为其原始值(在我的情况下为 1)。直到我找到以下命令来遍历所有表并将其重新设定为当前值 + 1 之前,我感到很痛苦:

 exec sp_MSforeachtable @command1 = 'DBCC CHECKIDENT (''?'', RESEED)'
Run Code Online (Sandbox Code Playgroud)

权限不见了。数据库级帐户当然过来了(连同他们的角色分配),但是每个角色的大部分数据库权限都消失了……这意味着每个表、视图和存储过程都缺少读取、插入、删除、执行等权限. 我写了一些像下面这样的脚本来纠正,但仍然很痛苦。

 select 'GRANT SELECT ON ' + TABLE_NAME + ' TO rolename' from Information_schema.tables      
Run Code Online (Sandbox Code Playgroud)

如果恢复到新实例,显然不存在实例级别的权限……但这有点痛苦,因为如果该帐户已存在于数据库级别,您似乎无法重新创建实例级别的帐户。这里最好的方法是什么?就我而言,我删除了数据库帐户,创建了实例,然后使用上述脚本授予了权限。

一般来说,我只是对一些最佳实践感到好奇,当涉及到恢复 SQL Server 数据库......和/或以某种方式避免我遇到的问题的提示时。我只是想为尽可能无错误的恢复铺平道路。

sql-server-2005 sql-server

3
推荐指数
1
解决办法
1987
查看次数