In some OSs, the number of files allowed for a process is only 1024, as reflected by this inside MySQL
open_files_limit = 1024
The fix is to change the OS setting via ulimit before starting mysqld:
ulimit -n 4096
Or... Append these two lines to /etc/security/limits.conf
mysql hard nofile 65535
mysql soft nofile 65535
The "500" may be because of more than one "file" needing to be opened for each "table".