mysql如何设置堆栈空间不足_mysql - MySQL,为大表失败和空间丢失添加字段 - 堆栈内存溢出...

我想在一个大的MySQL表中添加一个字段:

mysql> alter table `offer_clicks` add `reconciled_at` datetime, algorithm=inplace, lock=none;

经过几个小时的工作后,该过程失败了:

ERROR 2013 (HY000): Lost connection to MySQL server during query

我每次尝试过几次这个过程有不同的错误,我一直在逐一解决,问题是在上一次错误之后,进程中使用的磁盘空间无法恢复:

aHR0cHM6Ly9pLnN0YWNrLmltZ3VyLmNvbS95M1BtYS5wbmc=

正如你在上面的图片中看到的那样,我首先升级了磁盘的空间,因为我知道添加新的字段进程将消耗大约700GB(我已经在另一个数据库中测试了它),然后我尝试了一些时间并在每次失败后磁盘空间已恢复,但在最后一次失败后没有恢复。

我尝试过的事情:

该流程不再是show full processlist的流程。

我试图重启实例(它是一个RDS实例),但文件空间仍未恢复。

表中没有新字段

我怎样才能找回丢失的空间?

更新

关于表格的信息:

mysql> show table status where Name="offer_clicks" \G

*************************** 1. row ***************************

Name: offer_clicks

Engine: InnoDB

Version: 10

Row_format: Dynamic

Rows: 98238612

Avg_row_length: 6102

Data_length: 599495016448

Max_data_length: 0

Index_length: 58622377984

Data_free: 4194304

Auto_increment: 145148580

Create_time: 2017-06-30 10:40:11

Update_time: 2017-12-30 10:28:49

Check_time: NULL

Collation: utf8_unicode_ci

Checksum: NULL

Create_options:

Comment:

1 row in set (0.00 sec)

重要变量:

mysql> show variables where Variable_name="innodb_file_per_table" \G

*************************** 1. row ***************************

Variable_name: innodb_file_per_table

Value: ON

1 row in set (0.01 sec)

有关临时文件的信息:

mysql> SELECT * FROM INFORMATION_SCHEMA.FILES WHERE TABLESPACE_NAME='innodb_temporary'\G

*************************** 1. row ***************************

FILE_ID: 775

FILE_NAME: /rdsdbdata/db/innodb/ibtmp1

FILE_TYPE: TEMPORARY

TABLESPACE_NAME: innodb_temporary

TABLE_CATALOG:

TABLE_SCHEMA: NULL

TABLE_NAME: NULL

LOGFILE_GROUP_NAME: NULL

LOGFILE_GROUP_NUMBER: NULL

ENGINE: InnoDB

FULLTEXT_KEYS: NULL

DELETED_ROWS: NULL

UPDATE_COUNT: NULL

FREE_EXTENTS: 32

TOTAL_EXTENTS: 76

EXTENT_SIZE: 1048576

INITIAL_SIZE: 12582912

MAXIMUM_SIZE: NULL

AUTOEXTEND_SIZE: 67108864

CREATION_TIME: NULL

LAST_UPDATE_TIME: NULL

LAST_ACCESS_TIME: NULL

RECOVER_TIME: NULL

TRANSACTION_COUNTER: NULL

VERSION: NULL

ROW_FORMAT: NULL

TABLE_ROWS: NULL

AVG_ROW_LENGTH: NULL

DATA_LENGTH: NULL

MAX_DATA_LENGTH: NULL

INDEX_LENGTH: NULL

DATA_FREE: 75497472

CREATE_TIME: NULL

UPDATE_TIME: NULL

CHECK_TIME: NULL

CHECKSUM: NULL

STATUS: NORMAL

EXTRA: NULL

1 row in set (0.00 sec)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值