- Путь до базы MySQL / MariaDB
- Посмотреть текущий путь
- Как узнать путь до файлов базы данных MySQL/MariaDB в Linux и Windows
- Определение пути без подключения к серверу СУБД
- Переменная @@datadir;
- Как узнать настройки директорий в MySQL/MariaDB
- Как узнать путь до базы данных MySQL/MariaDB в скрипте
- Где MySQL хранит файлы баз данных в Windows и как называются эти файлы?
- 13 ответов
- Где MySQL хранит файлы базы данных в Windows и каково имя файлов
- 12 ответов:
Путь до базы MySQL / MariaDB
В статье пойдет речь о просмотре и смене пути расположения файлов баз данных MySQL. Приведенные примеры выполнены на CentOS 7 — также они будут работать на Ubuntu и многих других дистрибутивах Linux, FreeBSD и Windows.
Посмотреть текущий путь
Увидеть, где хранятся базы можно несколькими способами.
Способ 1. Командная строка Linux.
В командной строке вводим:
systemctl status mysql || systemctl status mariadb
* для Windows используем оснастку Службы. Для FreeBSD используем команду service mysql-server stop.
mariadb.service — MariaDB database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
Active: active (running) since Ср 2018-07-11 15:38:16 MSK; 23h ago
Process: 1067 ExecStartPost=/usr/libexec/mariadb-wait-ready $MAINPID (code=exited, status=0/SUCCESS)
Process: 992 ExecStartPre=/usr/libexec/mariadb-prepare-db-dir %n (code=exited, status=0/SUCCESS)
Main PID: 1066 (mysqld_safe)
CGroup: /system.slice/mariadb.service
??1066 /bin/sh /usr/bin/mysqld_safe —basedir=/usr
??1248 /usr/libexec/mysqld —basedir=/usr —datadir=/var/lib/mysql —plugin-dir=/usr/lib64/mysql/plugin —log-error=/var/log/mariadb/mariadb.log —pid-file=/var/run/mariadb/mariadb.pid —socket.
* в выделенном фрагменте /var/lib/mysql — путь до файлов базы данных.
Способ 2. Командная оболочка MySQL.
Данный способ является более универсальным — он подойдет для любого дистрибутива Linux, FreeBSD, Windows. Также, метод универсален с точки зрения метода установки MySQL — чистая установка или в составе готовой сборки (Open Server, Xampp, Denwer . ).
Заходим под пользователем root в командную оболочку СУБД:
> SHOW VARIABLES WHERE Variable_Name LIKE «datadir»;
Как узнать путь до файлов базы данных MySQL/MariaDB в Linux и Windows
Файлы базы MySQL/MariaDB данных хранятся на жёстком диске. По умолчанию это папка data внутри директории исполнимых файлов MySQL (в Windows) или в директории /var/lib/mysql/ (Linux).
В настройках можно указать любое расположение базы данных MySQL — необязательно в папке с установленной программой, это может быть произвольная папка. Более того, на серверах с высокой нагрузкой рекомендуется файлы баз данных выносить на отдельный диск, чтобы не снижалась производительность из-за одновременного доступа к диску для чтения баз данных и для запуска исполнимых файлов.
Иногда непросто разобраться в сложной структуре веб-сервера, иногда нужно в скрипте реализовать возможность определять путь до файлов баз данных — например, в целях настройки автоматического резервного копирования.
Далее будет показано, как в командной строке можно определить, где расположены файлы баз данных MySQL в Windows и в Linux.
Определение пути без подключения к серверу СУБД
В Windows
В ОС Windows для получения пути до базы данных введите команду:
Если вы получите сообщение, что команда mysqld не найдена, значит нужно указать путь до исполнимого файла mysqld или перейти в директорию с исполнимым файлом. Предположим, MySQL/MariaDB установлена в папке C:\Server\bin\mariadb, тогда переходим в поддиректорию bin, содержащую исполнимые файлы, и выполняем там указанную выше команду:
В Linux
В операционной системе Linux выполните следующую команду и она покажет вам путь до базы данных:
Переменная @@datadir;
Этот способ работает на всех системах одинаково. Нужно выполнить подключение к системе управления базой данных. Например, для пользователя root это делается так:
И затем в консоли MySQL/MariaDB выполните:
Как видно на скриншоте, путь до файлов базы данных на сервере, где введена команда, c:\Server\data\DB\data\.
Ещё один вариант выполнения данной команды:
Как узнать настройки директорий в MySQL/MariaDB
Чтобы показать информацию о всех настройках директорий СУБД сервера, выполнит команду:
Пример вывода в Windows для MariaDB:
Чтобы вывести только datadir выполните команду:
Как узнать путь до базы данных MySQL/MariaDB в скрипте
Если вы используете полученное значение пути до папки баз данных, например, в скрипте, то есть вам нужно только значение без лишних символов псевдографики, которая имитирует таблицу, то примените следующую команду:
Примечание: если в Linux у вас проблемы с последними командами, то инвертируйте (поменяйте местами) одинарные и двойные кавычки.
Также не забывайте менять пользователя root на имя вашего пользователя.
Где MySQL хранит файлы баз данных в Windows и как называются эти файлы?
Поэтому я случайно отформатировал свой жесткий диск и переустановил Windows и забыл сделать резервную копию важной базы данных, которая была у меня на сервере MySQL. Сейчас я пытаюсь восстановить файлы с помощью некоторого программного обеспечения, но я не знаю, что искать.
По какому пути хранятся файлы, и как называются эти файлы (какое соглашение об именах или расширение файла следует искать)?
Я считаю, что мой сервер использовал MyISAM, но не уверен на 100%.
Любой совет будет принят во внимание!
13 ответов
Вы можете проверить файл my.ini , чтобы узнать, где находится папка с данными.
Обычно существует папка
Хранилище данных MySQL:
Файлы *.frm содержат определения таблиц. Ваши файлы *.myi являются файлами индекса MyISAM. Ваши файлы *.myd содержат данные таблицы.
Edit/Update. Из-за интереса, проявленного в вопросе, здесь больше информации, которая встречается и в комментариях.
В Windows 8.1 базы данных MySQL хранятся (по умолчанию) здесь: C:\ProgramData\MySQL\MySQL Server 5.6\data
Папка C:\ProgramData является скрытой папкой, поэтому вы должны ввести ее в адрес проводника Windows, чтобы попасть туда. В этой папке данных базы данных называются /
Спасибо @marty-mcgee за этот контент
В Windows 7 база данных MySQL хранится в
C:\ProgramData\MySQL\MySQL Server 5.6\data
Примечание: это скрытая папка. И мой пример для MySQL Server версии 5.6; измените имя папки на основе вашей версии, если отличается.
Полезно знать это местоположение, потому что иногда MySQL Workbench не может удалить схемы (или импортировать базы данных). В основном это связано с наличием файлов в папках db, которые по какой-то причине не могли быть удалены в более раннем процессе Workbench. Удалите файлы с помощью Windows Explorer и попробуйте еще раз (удаление, импорт), ваша проблема должна быть решена.
Надеюсь это поможет 🙂
У меня есть файл my-default.ini по умолчанию в корневом каталоге и есть одна конфигурация сервера:
Итак, это не говорит мне путь.
Лучший способ — подключиться к базе данных и запустить этот запрос:
Если вы хотите, чтобы все параметры, настроенные для базы данных, выполнили это:
Переменная storage_engine сообщит вам, используете ли вы InnoDb или MyISAM.
Для Windows 7: c:\users\all users\MySql\MySql Server x.x\Data\
Где x.x — номер версии SQL-сервера, установленного на вашем компьютере.
Обычно он находится в папке, указанной ниже, но ProgramData обычно является скрытой папкой. Чтобы показать это, перейдите в панель управления, найдите «папку», затем в расширенных настройках отметьте скрытые файлы и нажмите «Применить». C:/ProgramData/MySQL/MySQL Server 5.5/Data/
Это должен быть ваш <установочный путь>\data, например. C:\apps\wamp\bin\mysql\mysql5.5.8\data\
Я только что установил MySQL 5.7 в Windows7. Файлы базы данных находятся в следующем каталоге, который является скрытым: C:\ProgramData\MySQL\MySQL Server 5.7\Data
Файл my.ini находится в том же корневом каталоге: C:\ProgramData\MySQL\MySQL Server 5.7
Просто выполните поиск в Windows *.myi на локальных разделах. Период.
Как я подозревал, они находились внутри папки программных файлов, вместо того, чтобы использовать соответствующую папку только для данных, как это делают большинство других менеджеров баз данных.
Зачем искать файл my.ini, открывать его с помощью редактора, искать строку пути, не изменять файл конфигурации (!), а затем выполнять второй поиск? Сложно, без использования дополнительных преимуществ, кроме практики сенсорного ввода.
в MySQL:
«.myd» — база данных и
«.tmd» временный файл.
Но иногда я вижу также «.sql».
Это зависит от ваших настроек и/или метода экспорта.
Если вы используете Win10 с установленным сервером Xampp, вы можете найти папку с данными в C:\xampp\mysql\data
Внутри папки данных каждая база данных имеет свою собственную папку, которая, в свою очередь, содержит файлы .frm,.myi и .myd, которые представляют одну таблицу в базе данных.
Если, например, вы создали базу данных с именем: myschool и внутри базы данных, у вас есть три таблицы с именами:
Затем у вас будет за детским столом: nursery.frm, nursery.myi и nursery.myd. То же самое касается первичных и вторичных таблиц. Таким образом, в упомянутом мною файле вы найдете в общей сложности 9 файлов в папке базы данных с именем myschool.
Затем вы можете скопировать папку базы данных и использовать ее в новой папке данных установки mysql.
Надеюсь, это поможет.
С наилучшими пожеланиями.
Поиск my.ini на диске, мы найдем эту папку:
C:\ProgramData\MySQL\MySQL Server 8.0
Это ProgramData , а не Program file
Данные находятся в подпапке: \Data .
Каждой database принадлежит папка, каждая table — файл, каждый index — 1+ файлов.
Вот пример базы данных sakila :
Где MySQL хранит файлы базы данных в Windows и каково имя файлов
поэтому я случайно отформатировал свой жесткий диск и повторно установил windows и забыл создать резервную копию важной базы данных, которую я имел на своем сервере mySQL. Я пытаюсь спасти файлы сейчас с помощью некоторого программного обеспечения, но я не знаю, что искать.
Каков путь, в котором хранятся файлы, и каковы имена файлов (какое соглашение об именах или расширение файла я должен искать?)
Я считаю, что мой сервер использовал MyISAM, но не на 100% уверен.
любые советы будем признательны!
12 ответов:
вы можете проверить my.ini файл, чтобы увидеть, где находится папка данных.
обычно есть папка
хранение данных MySQL:
The *.файлы frm содержат определения таблиц. Твой.* файлы myi-это файлы индекса MyISAM. Твой.* файлы myd содержат табличные данные.
Изменить/Обновить. Из-за интереса, проявленного к вопросу, здесь больше информации, которая также находится в комментарии.
в Windows 8.1, базы данных MySQL хранятся (по умолчанию) здесь: C:\ProgramData\MySQL\MySQL Server 5.6\data
папка C:\ProgramData это скрытая папка, поэтому вы должны ввести ее в адрес Проводника Windows, чтобы попасть туда. В этой папке данных базы данных называются /
спасибо @marty-mcgee за этот контент
в Windows 7 база данных MySQL хранится в
C:\ProgramData\MySQL\MySQL сервер 5.6\data
Примечание: это скрытая папка. И мой пример для MySQL Server версии 5.6; измените имя папки на основе вашей версии, если она отличается.
Это очень удобно, чтобы знать это место, потому что иногда MySQL Workbench не удается удалить схемы (или импортировать базы данных). Это в основном связано с наличием файлов в папках БД, которые по какой-то причине не удалось удалить в более раннем процессе с помощью верстака. Удалите файлы с помощью Проводника Windows и повторите попытку (удаление, импорт), ваша проблема должна быть решена.
надеюсь, что это помогает 🙂
у меня есть по умолчанию my-default.ini файл в корне и есть одна конфигурация сервера:
так что это не говорит мне путь.
лучший способ-это подключиться к базе данных и выполнить этот запрос:
если вы хотите видеть все параметры, настроенные для базы данных, выполните это:
переменная storage_engine сообщит вам, используете ли вы InnoDb или Движок MyISAM.
Для Windows 7: c:\users\all users\MySql\MySql Server x. x\Data\
где x.x-номер версии sql server, установленного на вашем компьютере.
Это должен быть ваш <путь установки>\data например C:\apps\wamp\bin\mysql\mysql5.5.8\data\
просто выполните поиск Windows для *.файлы myi на локальных разделах. Период.
Как я подозревал, они были расположены внутри папки program files, вместо того, чтобы использовать соответствующую папку только для данных, как это делают большинство других менеджеров баз данных.
зачем это мне.поиск файла ini, откройте его с помощью редактора, найдите строку пути, убедитесь, что вы не изменяете файл конфигурации (!), а затем сделать второй поиск? Сложный без малейшего дополнительного преимущества, кроме практики слепая печать.
обычно он находится в папке, указанной ниже, но ProgramData обычно является скрытой папкой. Чтобы показать его, перейдите в Панель управления поиск «папка», затем в разделе Дополнительные настройки отметьте показать скрытые файлы и нажмите кнопку Применить. C:/ProgramData/MySQL/MySQL Сервер 5.5 / Data/
Я только что установил MySQL 5.7 на Windows7. Файлы базы данных находятся в следующем каталоге, который является скрытым: C:\ProgramData\MySQL\MySQL Server 5.7\Data
The my.ini файл находится в том же корне: C:\ProgramData\MySQL\MySQL Server 5.7
в MySQL,
«.myd » база данных self и
«.ТМД» временного файла.
Но иногда я тоже вижу».язык SQL.»
Это зависит от ваших настроек и/или метода экспорта.
1) Найдите my.ini, которые хранятся в папке установки MySQL.
2) Откройте «мой.ini » с нашим текстовым редактором favor.
найти «datadir», это где MySQL хранит данные в Windows.
C:\Program файлы\MySQL\MySQL Workbench 6.3 CE\sys
вставить URL в окне файла, и получить Tables, Procedures, Functions из этого каталога
Поиск my.ini на диске мы найдем эту папку:
C:\ProgramData\MySQL\MySQL Сервер 8.0
Это ProgramData , а не Program file
данные в папку: \Data .
каждого database владеет папкой, каждый table файл, каждый элемент index это 1+ файлов.
вот пример базы данных sakila :