Где MySQL хранит файлы базы данных в Windows и каково имя файлов

поэтому я случайно отформатировал свой жесткий диск и повторно установил windows и забыл создать резервную копию важной базы данных, которую я имел на своем сервере mySQL. Я пытаюсь спасти файлы теперь с помощью некоторых программ, но я не знаю, что искать.

Каков путь, по которому хранятся файлы, и как называются файлы (какое соглашение об именах или расширение файла я должен искать?)

Я считаю, что мой сервер использовал MyISAM, но не 100% уверен.

любые советы был бы признателен!

12 ответов


вы можете проверить my.ini файл, чтобы увидеть, где находится папка данных.

обычно есть папка {mysqlDirectory} / data

хранение данных MySQL:

Commands.frm
Commands.myd
Commands.myi

на *.файлы frm содержат определения таблиц. Твой.* файлы myi-это файлы индекса MyISAM. Твой.* файлы myd содержат данные таблицы.

Изменить/Обновить. Из-за интереса, проявленного к вопросу, здесь больше информации, которая также находится в комментарии.

в Windows 8.1, базы данных MySQL хранятся (по умолчанию) здесь: C:\ProgramData\MySQL\MySQL Server 5.6\data

папка C:\ProgramData это скрытая папка, поэтому вы должны ввести ее в адрес Проводника Windows, чтобы добраться туда. В этой папке данных базы данных называются /{database_name_folder}/{database_tables_and_files}.

например,

C:\ProgramData\MySQL\MySQL Server 5.6\data\mydatabase\mytable.frm
C:\ProgramData\MySQL\MySQL Server 5.6\data\mydatabase\mytable.ibd 

спасибо @marty-mcgee за этот контент


в Windows 7 база данных MySQL хранится в

C:\ProgramData\MySQL\MySQL сервер 5.6\data

Примечание: это скрытая папка. И мой пример для MySQL Server версии 5.6; измените имя папки на основе вашей версии, если отличается.

Это удобно знать это место, потому что иногда MySQL Workbench не может отбросить схемы (или импортировать базы данных). Это в основном связано с наличием файлов в папках db, которые по какой-то причине не удалось удалить в более раннем процессе с помощью Workbench. Удалите файлы с помощью Проводника Windows и повторите попытку (удаление, импорт), ваша проблема должна быть решена.

надеюсь, что это помогает :)


у меня есть значение по умолчанию my-default.ini файл в корне и есть одна конфигурация сервера:

[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 

так что это не говорит мне путь.

лучший способ-это подключиться к базе данных и выполнить этот запрос:

SHOW VARIABLES WHERE Variable_Name LIKE "%dir" ;

вот это:

basedir                     C:\Program Files (x86)\MySQL\MySQL Server 5.6\
character_sets_dir          C:\Program Files (x86)\MySQL\MySQL Server 5.6\share\charsets\

datadir                     C:\ProgramData\MySQL\MySQL Server 5.6\Data\
innodb_data_home_dir    
innodb_log_group_home_dir   .\
lc_messages_dir             C:\Program Files (x86)\MySQL\MySQL Server 5.6\share\

plugin_dir                  C:\Program Files (x86)\MySQL\MySQL Server 5.6\lib\plugin\

slave_load_tmpdir           C:\Windows\SERVIC~2\NETWOR~1\AppData\Local\Temp
tmpdir                      C:\Windows\SERVIC~2\NETWOR~1\AppData\Local\Temp

если вы хотите увидеть все параметры, настроенные для базы данных, выполните следующее:

SHOW VARIABLES;

переменная storage_engine сообщит вам, используете ли вы InnoDb или Движок MyISAM.


Для Windows 7: c:\users\all пользователи\MySql\MySql Server x.x\Data\

где x.x-номер версии sql server, установленного на компьютере.

Фидель



просто выполните поиск Windows для *.файлы myi на локальных разделах. Период.

Как я подозревал, они были расположены внутри папки program files, вместо того, чтобы использовать правильную папку только для данных, как это делают большинство других менеджеров баз данных.

Почему мой.ini file search, откройте его с помощью редактора, найдите строку пути, убедитесь, что вы не изменяете файл конфигурации (!), а затем сделать второй поиск? Сложно без малейшего дополнительного преимущества, кроме практики слепая печать.


обычно он находится в папке, указанной ниже, но ProgramData обычно является скрытой папкой. Чтобы показать его, перейдите в Панель управления поиск "папка", затем в разделе "Дополнительные настройки" отметьте "показать скрытые файлы" и нажмите "Применить". C:/ProgramData/MySQL/MySQL Сервер 5.5 / Data/


Я только что установил MySQL 5.7 на Windows7. Файлы базы данных находятся в следующем каталоге, который является скрытым: C:\ProgramData\MySQL\MySQL Server 5.7\Data

на my.ini файл находится в том же корне:C:\ProgramData\MySQL\MySQL Server 5.7


в MySQL,
".myd " база данных self и
".tmd " временный файл.
Но иногда я тоже вижу ".язык SQL."

Это зависит от ваших настроек и / или метода экспорта.


1) Найдите my.ini, которые хранятся в папке установки MySQL.

например,

C:\Program Files\MySQL\MySQL Server 5.1\my.ini

2) Откройте " my.ini " с нашим текстовым редактором favor.

#Path to installation directory. All paths are usually resolved relative to this.
basedir="C:/Program Files/MySQL/MySQL Server 5.1/"

#Path to the database root/"
datadir="C:/Documents and Settings/All Users/Application Data/MySQL/MySQL Server 5.1/Data

найти "datadir", это где MySQL хранит данные в Windows.


C:\Program файлы\MySQL\MySQL Workbench 6.3 CE\sys

вставить URLв окне файла, и получить Tables, Procedures, Functions из этого каталога


MYSQL 8.0:

Поиск my.ini на диске мы найдем эту папку:

C:\ProgramData\MySQL\MySQL Сервер 8.0
Это ProgramData, а не Program file

данные в папку: \Data.

каждого database владеет папкой, каждая table файл, каждый элемент index это 1+ файлов.

вот пример базы данных sakila: enter image description here