I am using MySQL 5.7.17 Enterprise edition in RHEL with configuration innodb_file_per_table=ON .
So now here i have 2 question :
Instead of ibd file per table ,i can see ibdata1,ib_logfile1,ib_logfile0 in data directory which is getting updated regularly .However these files are not big in size but collectively , these 3 files are consuming 15-20 GB space . So , instead of having ibd file per table "ON" , do these files still exist or if they exist what they contain which is making it updated regularly ?
I have devoted 393 GB to the data directory . and one database folder is occupying 293 GB alone. I have table_name.ibd files of size 84 GB-100 GB. Is there any way that i can check if any memory is getting waste ? and if it is getting waste how can i reclaim it ?
I ran optimize tables for some small tables only ( it helped) because if i run this command for big tables , i need more space before using optimize command as space required is table_size*2 .
I have checked table sizes as well . Size of table and size of respective table's ibd file , vary with 2 -3 GB difference .
Can anyone help me , what can i do here ?
Should i point MySQL data directory to new path ? if it is possible , how can i do this ?
Size of file (in GB) in Descending order : 93 33 19 17 16 14 13 11 11 9.2
table_name.ibd
)? You can optimize one table at a time and in that case you should have enough space available? Optimize is only going to help if you've had lots of deleted rows in a table so that space can be reclaimed.