【MySQL案例】ERROR 1786 (HY000)

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

转载于:https://www.cnblogs.com/xfgnongmin/p/10703986.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值