MariaDB重启后外键与索引是否会自动启用?
MariaDB批量插入后恢复外键检查与索引的注意事项
外键检查
禁用外键检查是通过SET FOREIGN_KEY_CHECKS=0;实现的,这属于会话级设置:- 若执行禁用操作的当前会话已断开,新会话会自动恢复默认的
FOREIGN_KEY_CHECKS=1(启用状态) - 若会话仍保持连接,不会自动恢复,必须手动执行
SET FOREIGN_KEY_CHECKS=1; - 重启MariaDB实例会重置所有会话的参数,全局回到默认启用外键检查的状态
- 若执行禁用操作的当前会话已断开,新会话会自动恢复默认的
索引
要是用ALTER TABLE ... DISABLE KEYS;禁用了非唯一索引(唯一索引无法禁用),这个设置是表级持久化的:- 重启MariaDB实例不会自动恢复索引,必须手动执行
ALTER TABLE ... ENABLE KEYS;来重建并启用索引 - 如果是直接删除了索引,需要手动重新创建,重启实例也无法自动恢复
- 重启MariaDB实例不会自动恢复索引,必须手动执行
内容的提问来源于stack exchange,提问作者Areeb
相关产品推荐
相关产品推荐

