Този въпрос е малко стар, но все пак реших да му отговоря, тъй като ровех малко по същия. Моят отговор се основава на файловата система на Linux. По принцип mySQL съхранява данни във файлове във вашия твърд диск. Той съхранява файловете в определена директория, която има системната променлива "datadir". Отваряне на mysql
console и изпълняването на следната команда ще ви каже къде точно се намира папката.
mysql> SHOW VARIABLES LIKE 'datadir';
+---------------+-----------------+
| Variable_name | Value |
+---------------+-----------------+
| datadir | /var/lib/mysql/ |
+---------------+-----------------+
1 row in set (0.01 sec)
Както можете да видите от горната команда, моят "datadir" се намираше в /var/lib/mysql/
. Местоположението на "datadir" може да варира в различните системи. Директорията съдържа папки и някои конфигурационни файлове. Всяка папка представлява mysql база данни и съдържа файлове с данни за тази конкретна база данни. по-долу е екранна снимка на директорията "datadir" в моята система.
Всяка папка в директорията представлява MySQL база данни. Всяка папка на база данни съдържа файлове, които представляват таблиците в тази база данни. Има два файла за всяка таблица, единият с .frm
разширение, а другият с .idb
разширение. Вижте екранната снимка по-долу.
.frm
табличният файл съхранява формата на таблицата. Подробности:Файлов формат MySQL .frm
.ibd
файл съхранява данните на таблицата. Подробности:InnoDB File-Per-Table Tablespaces
Това е хора! Надявам се да съм помогнал на някого.