MySQL ERROR 1227 (42000)错误处理
在还原数据库的时候,遇到以下报错:
ERROR 1227 (42000) at line 18: Access denied; you need (at least one of) the SUPER, SYSTEM_VARIABLES_ADMIN or SESSION_VARIABLES_ADMIN privilege(s) for this operation
从错误信息看,似乎是用户权限不够。但是,实际上不是权限的问题。
解决方案1: 重新mysqldump一份数据,在导出的时候,加上参数--set-gtid-purged=OFF,禁掉全局事务标识符。全局事务标识符会导致这个错误。 mysqldump --set-gtid-purged=OFF dbname > dump.sql 解决方案2: 直接修改备份生成的dump文件,移除其中的一些行。 在修改之前,建议将备份文件再做一次备份。 移除以下三行: SET @@SESSION.SQL_LOG_BIN= 0; SET @@GLOBAL.GTID_PURGED=/*!80000 '+'*/ ''; SET @@SESSION.SQL_LOG_BIN = @MYSQLDUMP_TEMP_LOG_BIN;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~