Date of last change of an InnoDB table structure I was wondering how to determine when was the last change (ALTER TABLE...) done to a given table. 

An old answer is available but unfortunately that doesn't work for InnoDB tables.

Would this work, looking at the frm file date time?

-rw-r-----   1 mysql    mysql       18622 Oct 24 21:07 mysql/data/mydb/mytable.frm
-rw-r-----   1 mysql    mysql     2114688 Oct 28 06:26 mysql/data/mydb/mytable.ibd


Oct 24 21:07 seems to roughly correspond to the last time a change in the structure was performed.
Is that reliable information?
I would say yes because any ALTER TABLE must change the timestamp of the last write to .frm.

To pull the UNIXTIME out, you would do this

ls -l --time-style=+"%s" mysql/data/mydb/mytable.frm | awk '{print $6}'


or to get the date time

ls -l --time-style=+"%Y-%m-%d %H:%M:%S" mysql/data/mydb/mytable.frm | awk '{print $6,$7}'


MySQL does provide an UPDATE_TIME column, but that's for changes to data or indexes.