导致SQL线程故障原因分析及解决方案

原因

1. 版本差异,参数设定不同,比如:数据类型的差异,SQL_MODE影响
2. 要创建的数据库对象已经存在
3. 要删除或修改的对象不存在
4. DML语句不符合表定义及约束时.
原因是由于从库发生了写入操作.
Last_SQL_Error: Error 'Can't create database 'klvchen'; database exists' on query. Default database: 'klvchen'. Query: 'create database klvchen'

处理方法(以从库为核心的处理方案):

# 方法一:
stop slave;
set global sql_slave_skip_counter = 1;
# 将同步指针向下移动一个,如果多次不同步,可以重复操作。
start slave; # 方法二:
vi /etc/my.cnf
# 在 [mysqld] 下添加
slave-skip-errors = 1032,1062,1007 # 常见错误代码:
1007:对象已存在
1032:无法执行DML
1062:主键冲突,或约束冲突 注意,以上操作有风险!最安全的做法就是重新构建主从。把握一个原则,一切以主库为主. # 方法三:(最优解决方案)
1.设置从库只读.
vi /etc/my.cnf
# 在 [mysqld] 下添加
read-only # 查看参数是否生效
show variables like '%read_only%';
注意:read-only 只会影响到普通用户,对管理员用户无效。 2.加中间件
读写分离。如 mycat

最新文章

  1. dedecms为文档页增加动态点击
  2. 【Java】异常处理_学习笔记
  3. tomcat apache 实现负载平衡的小demo
  4. NPOI导出Excel(含有超过65335的处理情况)
  5. android deep link(深度链接)与自定义协议!
  6. chromium获取代码和编译
  7. matlab和C/C++混合编程--Mex (六)参数传递
  8. Android 动画深入解析
  9. Kicad中批量添加过孔
  10. 网络编程之UDP
  11. Qt持久性对象进行序列化(同时比较了MFC与Java的方法)
  12. 基于jsoup的Java服务端http(s)代理程序-代理服务器Demo
  13. Two Pointers - leetcode [两指针问题]
  14. oc js 交互
  15. 在Ubuntu14.04上搭建自己的OpenVPN服务器并通过它上网
  16. 配置apache使之支持浏览器端的缓存
  17. PowerShell工作流学习-6-向脚本工作流添加检查点
  18. 2019西北工业大学程序设计创新实践基地春季选拔赛 I Chino with Rewrite (并查集+树链剖分+线段树)
  19. 【blog】SpringBoot聚合项目打包问题
  20. Hibernate学习(三)

热门文章

  1. require.context批量引入文件
  2. 菜鸟系列docker——docker网络(8)
  3. 学好linux必须精通用户管理的章节知识
  4. R语言绘制KS曲线
  5. 静态页面开发JS页面跳转加密解密URL和参数
  6. java笔记 -- 乐观锁与悲观锁
  7. Day 09 函数
  8. 【ES6】数值的扩展
  9. hdu 2955 Robberies (01背包好题)
  10. java8-date和timeAPI