开发者社区 > 数据库 > 关系型数据库 > 正文

RDS MySQL出现“OPERATION need to be executed set by

在创建存储过程、函数、触发器、事件、视图的时候出现如下错误。 从本地数据库导出SQL,在RDS上应用该SQL的时候出现如下错误。 从RDS MySQL 5.6实例下载逻辑备份,导入到RDS或本地数据库中,出现如下错误,错误代码为1227和1725。 [Err] 1227 - Access denied; you need (at least one of) the SUPER privilege(s) for this operation --常见于RDS MySQL 5.6 ERROR 1725 (HY000) at line 1936: OPERATION need to be executed set by ADMIN --常见于RDS MySQL 5.5 ERROR 1227 (42000) at line 2984: Access denied; you need (at least one of) the SUPER privilege(s) for this operation

展开
收起
雪哥哥 2022-01-07 16:49:41 1487 1
1 条回答
写回答
取消 提交回答
  • 删除DEFINER语句。 检查SQL文件,删除类似以下SQL语句。 DEFINER=root@% 在Linux系统中,可以尝试使用以下命令删除。 sed -ie 's/DEFINER[ ]=[ ][^ ]*/ / ' your.sql 删除GTID_PURGED语句。 说明:也可以导出的时候在mysqldump命令后添加参数“--set-gtid-purged=off“来取消输出GTID_PURGED子句。 检查SQL文件,删除类似以下SQL语句。 SET @@GLOBAL.GTID_PURGED='d0502171-3e23-11e4-9d65-d89d672af420:1-373, d5deee4e-3e23-11e4-9d65-d89d672a9530:1-616234'; 在Linux系统中,可以尝试使用类似以下命令删除。 awk '{ if (index($0,"GTID_PURGED")) { getline; while (length($0) > 0) { getline; } } else { print $0 } }' your.sql | grep -iv 'set @@' > your_revised.sql 适用于

    2022-01-07 17:06:42
    赞同 1 展开评论 打赏

阿里云关系型数据库主要有以下几种:RDS MySQL版、RDS PostgreSQL 版、RDS SQL Server 版、PolarDB MySQL版、PolarDB PostgreSQL 版、PolarDB分布式版 。

相关产品

  • 云数据库 RDS MySQL 版
  • 云数据库 RDS
  • 相关电子书

    更多
    One Box: 解读事务与分析一体化数据库 HybridDB for MySQL 立即下载
    One Box:解读事务与分析一体化数据库HybridDB for MySQL 立即下载
    如何支撑HTAP场景-HybridDB for MySQL系统架构和技术演进 立即下载

    相关镜像