优源码

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
优源码 首页 博客 查看内容

【MySQL案例】ERROR 1786 (HY000)

2014-7-1 09:47| 发布者: discuzadmin| 查看: 1530| 评论: 0|原作者: Jason_asia|来自: Jason_asia的CSDN博客

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

免责声明|优源码 | |

GMT+8, 2017-1-20 11:49

本站所有资源来自互联网或网友分享,仅可用于学习,不可商用,否则后果自负。

© 2012-2015 uyuanma.com

返回顶部