温馨提示:
本文最后更新于
2024-3-8,已超过半年没有更新,若内容或图片失效,请留言反馈。
前言
在日常数据库的使用中,配置较低的服务器容易出现炸库现象。
这篇文章将讲解常见解决办法。
常见炸库解决方法
- 1.存储空间不足 //清理磁盘。
- 2.3306端口被占用 //在宝塔可以直接查看端口占用情况,可以通过结束进程解决。
- 3.与其他数据库冲突 //可以尝试卸载其他数据库。
服务器配置较低炸库现象
在部分服务器上,较低的配置可能导致炸库。
若是符合条件,可以尝试innodb_force_recovery参数
使用方法:在数据库配置文件添加
innodb_force_recovery = 1 配置等号后面的数字可以按情况进行修改。
仅innodb_force_recovery 在紧急情况下设置为大于 0 的值,以便您可以启动InnoDB和转 储您的表。在这样做之前,请确保您拥有数据库的备份副本,以防需要重新创建它。4 或 更大的值可能会永久损坏数据文件。仅 innodb_force_recovery在您在数据库的单独物理副 本上成功测试设置后,才能在生产服务器实例上使用 4 或更高的设置。强制InnoDB恢复 时,您应该始终从该值开始, innodb_force_recovery=1并且只在必要时逐步增加该值。1 (SRV_FORCE_IGNORE_CORRUPT)
让服务器即使检测到损坏的页面也能运行。尝试跳过损坏的索引记录和页面,这有助于转储表
2 (SRV_FORCE_NO_BACKGROUND)
阻止主线程和任何清除线程运行。如果在清除操作期间发生意外退出,此恢复值会阻止它。
3 (SRV_FORCE_NO_TRX_UNDO)崩溃恢复后不运行事务回滚。
4 (SRV_FORCE_NO_IBUF_MERGE)防止插入缓冲区合并操作。如果它们会导致崩溃,请不要这样做。不计算表统计信息。此值可能会永久损坏数据文件。使用此值后,准备删除并重新创建所有二级索引。设置 InnoDB为只读。
5 (SRV_FORCE_NO_UNDO_LOG_SCAN)启动数据库时不查看撤消日志InnoDB:甚至将不完整的事务视为已提交。此值可能会永久损坏数据文件。设置InnoDB为只读。
6 (SRV_FORCE_NO_LOG_REDO)不执行与恢复相关的重做日志前滚。此值可能会永久损坏数据文件。使数据库页面处于过时状态,这反过来可能会给 B 树和其他数据库结构带来更多损坏。设置 InnoDB为只读。
扫描二维码,在手机上阅读

评论一下?