JBu*_*ace 6 performance database-design best-practices
作为“身兼数职”的系统管理员,我发现自己越来越多地参与到数据库项目中。我在大学时学习了一门数据库课程,从那时起,我在处理数据库/SQL 时总是在网上搜索资源(如 StackExchange)。但总有一些事情是我做的,我从不知道大型环境中的安全性和性能。
如果 DBA 要从头开始完全设计/创建数据库/模式并从那时起对其进行维护,您希望 DBA 知道什么?什么是 DBA 永远不应该做的事情,或者总是确保它完成了?您在教育从未为您做好准备的专业环境中经历了什么?
首先 - 您必须能够备份和恢复数据库。您必须知道如何设置重复计划来备份数据库和事务日志。
您应该知道需要定期进行哪些其他维护,例如更新统计信息。
您应该了解索引 - 如何创建它们以及何时创建它们以及何时不创建它们。
您应该了解如何阅读查询计划 - 执行计划或根据数据库后端解释计划。
您应该了解数据类型以及为什么使用正确的数据类型很重要。您还应该了解为什么每个表都需要一个 PK 以及如何设置 PK/FK 关系,并且永远不要让应用程序开发人员认为这些东西应该由应用程序而不是数据库来处理。
您应该熟悉数据库规范化。
您应该阅读有关特定数据库的性能调优和数据库内部结构的信息,并精通高级 SQL。
您应该知道如何监控数据库的性能。
您应该知道如何设置新用户并使用基于角色的安全性。
您应该能够在新服务器上安装数据库。
我相信还有更多,但这是一个起点。
| 归档时间: |
|
| 查看次数: |
1644 次 |
| 最近记录: |