来源:自学PHP网 时间:2015-04-16 10:51 作者: 阅读:次
[导读] 1 1 1 ERROR 1786 (HY000)【环境描述】msyql5 6 14【报错信息】执行create table select的时候遇到报错:db1 [test] [23:01:58] create tablelgmnr_bak select * from lgmnr; ER...
1.1.1. ERROR 1786 (HY000) 【环境描述】 msyql5.6.14 【报错信息】 执行create table ... select的时候遇到报错: db1 [test] [23:01:58]> create tablelgmnr_bak select * from lgmnr; ERROR 1786 (HY000): CREATE TABLE ... SELECTis forbidden when @@GLOBAL.ENFORCE_GTID_CONSISTENCY = 1 【报错原因】 ERROR1786是由于开启了enforce_gtid_consistency=true功能导致的,MySQL官方解释说当启用enforce_gtid_consistency功能的时候,MySQL只允许能够保障事务安全,并且能够被日志记录的SQL语句被执行,像create table ... select 和 create temporarytable语句,以及同时更新事务表和非事务表的SQL语句或事务都不允许执行。 db1 [test] [23:28:28]> show variableslike 'ENFORCE_GTID_CONSISTENCY'; +--------------------------+-------+ | Variable_name | Value | +--------------------------+-------+ | enforce_gtid_consistency | ON | +--------------------------+-------+ 【解决方法】 由于enforce_gtid_consistency参数是只读的,所以必须重启MySQL服务才能是配置生效。 尝试在线动态修改时的报错: db1 [test] [23:37:56]> set globalenforce_gtid_consistency=true; ERROR 1238 (HY000): Variable'enforce_gtid_consistency' is a read only variable |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com