参考自:http://www.blogjava.net/xiaomage234/archive/2014/07/25/416200.html


案例1、在线DDL报错提示日志空间不足

MySQL 往一张大表添加字段时报如下错误:

ERROR 1799 (HY000) at line 1: Creating index 'PRIMARY' required more than 'innodb_online_alter_log_max_size' bytes of modification log. Please try again.

解决方法:

我的数据库为MySQL 5.5版本,innodb_online_alter_log_max_size值为默认大小128M。

mysql> show variables like 'innodb_online_alter_log_max_size';

+——————————————+———————-+

| Variable_name                            | Value                |

+——————————————+———————-+

| innodb_online_alter_log_max_size         | 134217728            |

+——————————————+———————-+

1 rows in set (0.00 sec)

该参数为动态参数且全局的,可通过如下命令加大

mysql> set global innodb_online_alter_log_max_size=402653184;

Query OK, 0 rows affected (0.03 sec)

加到合适大小,我往120G大小表里添加字段设置该值4G,成功执行。

案例2、事务日志文件设置太小:

MySQL日志:

140306 12:03:25  InnoDB: ERROR: the age of the last checkpoint is 9434024,

InnoDB: which exceeds the log group capacity 9433498.

InnoDB: If you are using big BLOB or TEXT rows, you must set the

InnoDB: combined size of log files at least 10 times bigger than the

InnoDB: largest such row.

应该是Innodb引擎下日志大小设置过小导致的,某个事物产生大量日志,但innodb_log_file_size设置过小,可以加大解决。

解决方法:

STEP 01) 修改配置文件 /etc/my.cnf

[mysqld]

innodb_log_buffer_size          = 32M

innodb_buffer_pool_size         = 3G

innodb_log_file_size            = 768M

STEP 02) mysql -uroot -p -e"SET GLOBAL innodb_fast_shutdown = 0;"   # 强制全部内容都执行刷脏到文件中,便于安全关闭数据库

STEP 03) service mysql stop

STEP 04) rm -f /var/lib/mysql/ib_logfile*

STEP 05) service mysql start

案例3、pt-osc加字段时候报错:

收到错误如下:

# pt-online-schema-change –alter="add column tag_common text default null" –user=root –password=xxxxxxxx D=MYDB,t=MYTB –execute

Cannot connect to D=lsedata_13Q1,h=10.13.7.47,p=…,u=root

No slaves found.  See –recursion-method if host BJL1-Y13-10-ops.gaoder.net has slaves.

Not checking slave lag because no slaves were found and –check-slave-lag was not specified.

# A software update is available:

#   * Percona Toolkit 2.2.6 has a possible security issue (CVE-2014-2029) upgrade is recommended. The current version for Percona::Toolkit is 2.2.7.

The table `MYDB`.`MYTB` has triggers.  This tool needs to create its own triggers, so the table cannot already have triggers.

这是MYTB表上之前就有触发器的原因,可以从pt-online-schema-change的工作机制了解到:

1) 如果存在外键,根据alter-foreign-keys-method参数值,检测外键相关的表,针对相应的设置进行处理;

2) 创建一个新的表,表结构修改后的数据表,用于从源数据表向新表中导入数据;

3) 创建触发器,在复制数据开始之后,将对源数据表继续进行数据修改的操作记录下来,以便在数据复制结束后执行这些操作,保证数据不会丢失;

4) 复制数据,从源数据表中复制数据到新表中;

5) 修改外键相关的子表,根据修改后的数据,修改外键关联的子表;

6) 更改源数据表为old表,把新表更改为源表名,并将old表删除;

7) 删除触发器;


转载于:https://blog.51cto.com/lee90/1921119

MySQL常见的几个错误汇总相关推荐

  1. select into from 用法_年轻同事不讲武德,直接怼上MySQL常见SQL的七大错误用法

    今天来分享几个MySQL常见的SQL错误(不当)用法.我们在作为一个初学者时,很有可能自己在写SQL时也没有注意到这些问题,导致写出来的SQL语句效率低下,所以我们也可以自省自检一下. 常见SQL错误 ...

  2. mysql 错误问题_Mysql常见的几个错误问题及解决方法:

    Mysql常见的几个错误问题及解决方法: 1.问题: mysql DNS反解:skip-name-resolve 错误日志有类似警告: 点击(此处)折叠或打开 120119 16:26:04 [War ...

  3. mysql 3种报错_MySQL读取Binlog日志常见的3种错误-阿里云开发者社区

    MySQL读取Binlog日志常见的3种错误 mysqlbinlog: [ERROR] unknown variable 'default-character-set=utf8mb4' 当我们在my. ...

  4. mysql常见错误及解决办法_mysql常见错误代码、原因及处理办法

    1045 错误信息: Access denied for user'username'@'password'(using password:YES) 错误原因:权限错误,访问禁止 错误处理: 1)使用 ...

  5. 113 虚拟机 错误 mysql_Navicat连接虚拟机mysql常见错误问题及解决方法

    问题1 解决 启动服务:service mysqld start; /sbin/iptables -I INPUT -p tcp --dport 8011 -j ACCEPT #开启8011端口 /e ...

  6. mysql 错误提示_Mysql必读mysql常见的错误提示问题处理小结

    <Mysql必读mysql常见的错误提示问题处理小结>要点: 本文介绍了Mysql必读mysql常见的错误提示问题处理小结,希望对您有用.如果有疑问,可以联系我们. 1.mysql服务无法 ...

  7. Python 运行时常见错误汇总

    对于刚入门的Python新手,在学习过程中运行代码是或多或少会遇到一些错误,刚开始可能看起来比较费劲.随着代码量的积累,熟能生巧当遇到一些运行时错误时能够很快的定位问题原题.下面整理了常见的17个错误 ...

  8. MySQL常见备份与恢复方案

    MySQL常见备份方案有以下三种: mysqldump + binlog lvm + binlog xtrabackup 本例为方便演示,数据库里面数据为空.下面开始动手 1 2 3 4 5 6 7 ...

  9. MySQL常见错误代码(转)

    MySQL常见错误代码及代码说明 1005:创建表失败 1006:创建数据库失败 1007:数据库已存在,创建数据库失败<=================可以忽略 1008:数据库不存在,删除 ...

最新文章

  1. android 开发 获取各种intent (图片、apk文件、excel、pdf等文件)
  2. Nmap扫描参数解析(转)
  3. Codeforces Round #529 (Div. 3) E. Almost Regular Bracket Sequence (括号配对,前缀和)
  4. 实用防火墙(Iptables)脚本分析
  5. LeetCode 142. 环形链表 II(Linked List Cycle II)
  6. [日志]08/19/2007
  7. linux 交换机 进程,基于Linux系统交换机的进程升级研究
  8. sql server managerment 给表加说明
  9. layui文档,最新文档地址,官网已经下线
  10. windows XP 搭建asp运行环境
  11. bootStrap常用样式
  12. PHP小程序码扫码登录网站,微信扫小程序码实现网页端登录
  13. 利用Xutils框架进行断点续传下载
  14. 传统商圈陷入困境,构建商圈新零售平台成转型趋势
  15. EChart 展现内蒙古地图数据
  16. 废纸箱机器人图纸_手工制作大全:手绘纸箱机器人
  17. Linux 腾讯云服务器账户创建流程
  18. vue +高德地图 绘制围栏
  19. JavaScript 动态数据处理
  20. c语言海盗分1000个金币,海盗分金币问题及代码实现

热门文章

  1. 放弃MyBatis!我选择 JDBCTemplate!
  2. 号称下一代监控系统?
  3. CTO说:Service层的接口是不是多此一举
  4. Java开发最常犯的10个错误,打死都不要犯!
  5. 深度学习笔记之《解析卷积神经网络》附下载地址
  6. 引才125人!博士副处级待遇,硕士正科级,全部事业编​!限这些高校……
  7. 最新!薪酬最高的大学专业公布!
  8. 如何欣赏一个深度学习框架?
  9. 30 段极简 Python 代码:这些小技巧你都 Get 了么?
  10. 数据统计之日分类商品访问量