1
When I try to upload a file to a table of my mysql database the system returns the Table is Full error. However, I have other larger and heavier tables than this table that do not present this error. The error table has, approximately, 300MB. I have already set the variable innodb_file_per_table = 1
But I couldn’t set innodb_data_file_path
in the my.cnf
because every time I set the variable mysql service did not start, although I just add the lines:
[mysqld]
innodb_data_file_path = 'ibdata1:10G:autoextend'
I have tried this other method presented here with ALTER TABLE but it also didn’t work. I checked the disk space using the command df -h
and, all partitions are with enough free space. I don’t know what else could be.
Adding the code mentioned in Raylan’s comment resulted in a mysql boot error, so I fixed my my.cnf
for:
[innodb]
innodb_data_file_path = ibdata1:10G:autoextend:max:10G
And yet the mistake of Table is full persists.
Typing in the code mysql
on the server appears unknown variable 'innodb_data_file_path=ibdata1:10G:autoextend:max:10G'
In another attempt I performed a DROP TABLE and even now with the empty table the error continues. I don’t know where else to proceed.
The command to create the table was:
CREATE TABLE auxiliar_MA.HT_MA4_SBX_SEG
(
TS_SAMPLETM DATETIME
, VL_M4000109 DOUBLE
, VL_M4000110 DOUBLE
, VL_M4000111 DOUBLE
...
, VL_M4000669 DOUBLE
, VL_M4000674 DOUBLE
, VL_M4000675 DOUBLE
, VL_M4000676 DOUBLE
)
;
Thanks in advance.
If "max" doesn’t work? innodb_data_file_path = 'ibdata1:10G:autoextend:max:10G'
– Raylan Soares
I know it’s not about the problem, but I think that uploading files directly into the bank is a terrible practice. There is a link here talking about this and the reasons, so find put as comment, because it is only a hint and not an answer to the problem.
– Guilherme Nascimento
I added the code to my.cnf and it resulted in the error I added to the question. As for the file upload, I ended up expressing myself badly. I am using an ETL software to read txt files and upload the data to the database.
– Rafael
I think @Guilhermenascimento’s comment is accurate, and has to do with the problem, yes. The database is not designed to have a lot of files inside - the best thing is to refactor the system to only have names and file paths in the database and store them in the filesystem.
– jsbueno
But there are no files in the database, only data. My data processing routine reads the files. txt and only upload the data to the database.
– Rafael
ok - so I took a look at the document and found no clue - (except that your version of Mysql is very old, before 2012). The error should only occur if the disk is full.
– jsbueno
it is complicated hehehe as I edited there, even with the table with 0bytes it accuses Table is Full; while, in other tables, I can insert data without problems.
– Rafael
can put the "create table" command used?
– jsbueno
I added, I believe there’s nothing strange about it
– Rafael