数据库管理:核心对象风险与回退方案

需积分: 50 48 下载量 125 浏览量 更新于2024-08-09 收藏 1.22MB PDF 举报
"数据库管理-创建和管理索引以及回退策略" 在数据库管理中,创建索引是一项关键任务,尤其对于核心对象,因为它们通常涉及复杂的SQL查询和频繁的访问。在【标题】中提到的“回退方案-pycharm在新窗口打开项目的方法”虽然与PyCharm的使用有关,但实际内容主要涉及到数据库操作,特别是针对MySQL的索引管理和回退策略。 在【描述】中,核心对象的风险主要体现在以下几个方面: 1. 新建索引可能导致长时间阻塞,因此应在业务低峰期进行,并需经过主管批准。 2. 创建索引前应检查可能受影响的SQL,确保不会改变其他查询的执行计划。 3. 评估索引大小,以防止临时表空间不足,同时考虑表空间的预分配。 4. 确保统计信息准确,避免在9i及更早版本中因统计信息为空导致的问题。 5. 增大`db_file_multiblock_read_count`以减少创建时间。 6. 在11g之前的版本中,确保长事务在创建索引前已提交。 对于【回退方案】,当新建的索引未达预期效果或影响应用性能时,有以下几种回滚方法: 1. 直接删除索引:`DROP INDEX indexname;` 2. 设置索引为不可用(不推荐):`ALTER INDEX indexname UNUSABLE;` 3. 设置索引为不可见:`CREATE / ALTER INDEX indexname INVISIBLE;` 4. 若在线创建索引过程中出现问题,不要轻易取消,应查找阻塞原因,如果需要,可以通过SYS用户执行清理操作。 此外,【标签】中的“MySQL”表明这些操作适用于MySQL数据库,尽管示例中的某些命令可能更符合Oracle的语法。 在【部分内容】中,我们看到的是关于“建表”的风险评估和操作流程。建表操作需要考虑的风险包括: - 错误的schema选择 - 表空间规划不足 - 脚本编写错误 - 表定义与测试环境不一致 - 同步库延迟创建或配置未更新 操作流程包括: 1. 准备工作,包括确定表空间、商定建表时间、提交变更申请。 2. 执行过程,如用正确账户登录、执行建表脚本并检查结果。 3. 验证步骤,确保表正确创建并完成后续验证。 这些流程对于确保数据库变更的安全性和可靠性至关重要,避免因建表操作引起的问题影响到数据库和应用的正常运行。