我是一名开发人员。美好时光里的建筑师。不知何故,我发现自己也是我的小公司的 DBA。我的 DB 艺术背景不错,但我从来都不是一名成熟的 DBA。我的问题是我必须做什么才能以尽可能少的实际努力确保一个可靠且功能合理的数据库环境?

我确信我需要确保正在执行备份并且正在完成备份。这是一件容易的事。我还应该持续做哪些事情?

有帮助吗?

解决方案

还有谁参与数据库?您是唯一进行架构更改(创建新对象、发布新存储过程、授予新用户权限)的人吗?

  • 确保执行任何可能影响性能的操作的用户数量尽可能减少到接近于零,最好包括您。
  • 确保您正在测试备份 - 最好运行定期重新创建生产环境的 DEV 框,1.DEV 盒是个好主意,2。仅当您可以从中恢复时,备份才有用。
  • 为连接到数据库的各种应用程序创建组,这样当新用户出现时,您不必猜测他们需要什么权限,只需将他们添加到组中,同时将数据库对象的权限仅授予需要它们的组
  • 使用索引、主键、外键、约束、统计数据以及数据库支持的任何其他工具。正常化。
  • 针对您的机器优化最常见的代码 - 错误的存储过程/数据访问代码会杀死您。

其他提示

我去过那儿。我曾经的工作是编写代码、处理所有基础设施工作、担任 DBA 帽子、提供用户支持、修复卡住的电动订书机,以及其他可能与 IT 相关的事情。太好了!我对一切都了解了一点。

至于数据库盒的维护和喂养,我建议您执行以下操作:

  • 定期执行完整备份。

  • 定期执行事务日志备份。

  • 监控您的备份作业。市场上有很多相对便宜的实用程序可以为您实现自动化。在一家小商店里,您常常忙于记住每天检查它们。

  • 测试您的备份。做一次练习。恢复最重要数据库的旧副本。向自己证明您的备份正常工作并且您知道如何正确恢复它们。你会惊讶地发现有多少人只在第一次真正的灾难时才想到这一点。

  • 异地存储备份。如今,在线备份提供商层出不穷,没有太多理由不进行异地备份。

  • 限制 sa 对您的邮箱的访问。

  • 如果您的数据库平台支持,请仅使用基于角色的安全性。抵制拥有一次性用户特定安全性的诱惑。

这里的基本想法是,如果您限制谁有权访问该框,那么您遇到的问题就会减少。其次,如果您的备份可靠,那么几乎没有什么事情是您无法有效处理的。

我会建议:

  • 一个脚本,用于快速恢复数据库的最新备份,以防数据库损坏
  • 您正在进行什么类型的备份?每天完整备份,还是每小时增量备份,等等?
  • 一些脚本用于创建新用户并授予他们基本访问权限。

然而,第一个建议是尽可能限制其他用户拥有的权力,这将大大减少事情变得严重混乱的机会。每个人都担任 SA 的服务器往往比被锁定的服务器更快出问题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top