Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

We have a database and some data is stored in a Trucrypt folder, my question is how can I include this trucrypt folder. The data type is MyISAM. I saw there is a symbolic link, but not really clear for me how can I use that.

You can use symbolic links with MySQL. All you would need to do is make a symbolic link for the .frm, .MYI and .MYD files of your MyISAM tables into the MySQL database schema directory that you want. After that, run flush tables; and they should show up.

It is also important that the MySQL user is able to access those files, so you might have a bit of an issue with user rights.

Also, depending on your MySQL version, there maybe a setting in the my.cnf which enables/disables symbolic links, so you would need to keep an eye on that too.

It's best not to symlink the .frm files, as MySQL can sometimes overwrite these with physical files when you do certain types of ALTER TABLE statements. I can't remember which, but I've come unstuck with this before and have been left with two .frm files!
–
Dave RixSep 20 '11 at 9:21

It is recommended to symlink the entire database, rather than specific tables - see section 7.11.3.1 of the MySQL 5.5 manual.

Section 7.11.3.1.2 states that it is possible to symlink the MyISAM data and index files to different directories (on different partitions for performance reasons), but NOT the .FRM table definition file.

You also need to ensure that you don't have "skip-symbolic-links" turned on in the server variables.

You can move existing data and index files (or a whole database) and then symlink back, just make sure you shut down the server first! If it doesn't start back up properly, check the "skip-symbolic-links" option has NOT BEEN SET...