Расположение файлов для экземпляра по умолчанию и именованных экземпляров SQL Server
Установка SQL Server состоит из одного или нескольких отдельных экземпляров. Как экземпляр по умолчанию, так и именованный экземпляр имеет собственный набор программных файлов и файлов данных, а также набор общих файлов, используемых всеми экземплярами SQL Server , установленными на компьютере.
Для экземпляра SQL Server , включающего Компонент Database Engine, Службы Analysis Servicesи Службы Reporting Services, каждый компонент имеет полный набор файлов данных и исполняемых файлов, а также общие файлы, используемые всеми компонентами.
Чтобы изолировать друг от друга папки установки, формируется уникальный идентификатор экземпляра для каждого из компонентов экземпляра SQL Server.
Программные файлы и файлы данных не могут быть установлены на съемном диске, в файловой системе со сжатием данных, в каталоге расположения системных файлов, а также на общих дисках экземпляра отказоустойчивого кластера.
Может потребоваться настроить программное обеспечение, например антивирусное и антишпионское приложения, чтобы исключить из проверки типы файлов и папки SQL Server. Дополнительные сведения см. в этой статье службы поддержки: Настройка антивирусного программного обеспечения на компьютерах, где выполняется SQL Server.
Системные базы данных (Master, Model, MSDB и TempDB) и пользовательские базы данных компонента Компонент Database Engine можно установить с использованием протокола SMB в качестве хранилища файлового сервера Server Message Block (SMB). Это относится как к изолированному варианту установки SQL Server , так и к установке кластеров отработки отказа SQL Server . Дополнительные сведения см. в разделе Установка SQL Server с общей папкой SMB в качестве хранилища.
Не удаляйте следующие каталоги или их содержимое: Binn, Data, Ftdata, HTML или 1033. При необходимости можно удалить другие каталоги, однако возможно, что не удастся вернуть утраченную функциональность или восстановить потерянные данные без удаления и повторной установки SQL Server. Не удаляйте и не изменяйте HTM-файлы в каталоге HTML. Они необходимы для правильной работы средств SQL Server .
Общие файлы для всех экземпляров SQL Server
Общие файлы, используемые всеми экземплярами на одном компьютере, устанавливаются в папку диск>:\Program Files\Microsoft SQL Server\nnn\. диск> — это буква диска, на который устанавливаются компоненты. Обычно по умолчанию диск C. Значение nnn указывает версию. В следующей таблице перечислены версии для путей. — значение версии, используемое в идентификаторе экземпляра, и путь реестра.
Версия | *nnn* | |
---|---|---|
SQL Server 2022 (16.x) | 160 | 16 |
SQL Server 2019 (15.x) | 150 | 15 |
SQL Server 2017 (14.x); | 140 | 14 |
SQL Server 2016 (13.x); | 130 | 13 |
SQL Server 2014 (12.x) | 120 | 12 |
SQL Server 2012 (11.x) | 110 | 11 |
Расположение файлов и сопоставление данных реестра
Во время установки SQL Server для каждого компонента сервера создается идентификатор экземпляра. В этой версии SQL Server сервер состоит из компонента Компонент Database Engine, служб Службы Analysis Servicesи Службы Reporting Services.
Идентификатор экземпляра по умолчанию указывается в следующем формате.
- Для компонента Компонент Database Engine— MSSQL, за которым следуют основной номер версии, символ подчеркивания и дополнительный номер версии (если применимо), затем точка и имя экземпляра.
- Для служб Службы Analysis Services— MSAS, за которым следуют основной номер версии, символ подчеркивания и дополнительный номер версии (если применимо), затем точка и имя экземпляра.
- Для служб Службы Reporting Services— MSRS, за которым следуют основной номер версии, символ подчеркивания и дополнительный номер версии (если применимо), затем точка и имя экземпляра.
Ниже приведены примеры идентификаторов экземпляров по умолчанию для данной версии SQL Server .
- MSSQL.MSSQLSERVER — экземпляр SQL Server по умолчанию.
- MSAS.MSSQLSERVER — экземпляр по умолчанию служб SQL Server Analysis Services.
- MSSQL.MyInstance — именованный экземпляр SQL Server с именем «MyInstance».
Именованный экземпляр SQL Server , в состав которого входит компонент Компонент Database Engine и службы Службы Analysis Services, имеет имя «MyInstance» и устанавливается каталоге по умолчанию, имеет следующую структуру каталогов.
- C:\Program Files\Microsoft SQL Server\MSSQL.MyInstance\
- C:\Program Files\Microsoft SQL Server\MSAS.MyInstance\
В качестве идентификатора экземпляра может быть указано любое значение, следует только избегать применения специальных символов и зарезервированных ключевых слов.
Идентификатор экземпляра, отличный от заданного по умолчанию, можно указать во время установки SQL Server . Если пользователь хочет изменить каталог установки по умолчанию, вместо \\Microsoft SQL Server используется \Microsoft SQL Server. Следует заметить, что идентификаторы экземпляров, начинающиеся с символа подчеркивания (_) или содержащие символ решетки (#) или знак доллара ($), не поддерживаются.
Службы Integration Services и клиентские компоненты не привязаны к экземпляру, поэтому им не присваивается идентификатор экземпляра. По умолчанию компоненты, не связанные с определенным экземпляром, устанавливаются в общий каталог: «\диск>:\Program Files\Microsoft SQL Server\nnn\». Изменение пути установки для одного компонента приводит к его изменению и для всех остальных компонентов. При последующих установках компоненты, не зависящие от экземпляра, устанавливаются в каталог исходной установки.
SQL Server Службы Analysis Services — это единственный компонент SQL Server, который поддерживает переименование экземпляра после установки. При переименовании экземпляра служб Службы Analysis Services его идентификатор экземпляра не изменится. После переименования экземпляра в каталогах и разделах реестра по-прежнему используется идентификатор экземпляра, созданный во время установки.
Куст реестра создается в HKLM\Software\Microsoft\Microsoft SQL Server\Instance_ID> для компонентов, привязанных к экземпляру. Например,
- HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL.MyInstance
- HKLM\Software\Microsoft\Microsoft SQL Server\MSAS.MyInstance
- HKLM\Software\Microsoft\Microsoft SQL Server\MSRS.MyInstance
В реестре также хранится сопоставление идентификаторов экземпляров с именами экземпляров. Сопоставление идентификатора экземпляра с именем экземпляра осуществляется следующим образом:
- [HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Instance Names\SQL] «»=»MSSQL»
- [HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Instance Names\OLAP] «»=»MSAS»
- [HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Instance Names\RS] «»=»MSRS»
Указание путей к файлам
В ходе установки вы можете изменить путь установки для следующих компонентов:
Путь установки отображается в программе установки только для компонентов с пользовательской целевой папкой.
Компонент | Путь по умолчанию | Настраиваемый или фиксированный путь |
---|---|---|
Компонент Database Engine компоненты сервера | \Program Files\Microsoft SQL Server\MSSQL.\ | Настраивается |
Компонент Database Engine файлы данных | \Program Files\Microsoft SQL Server\MSSQL.\ | Настраивается |
Службы Analysis Services сервер | \Program Files\Microsoft SQL Server\MSAS.\ | Настраивается |
Службы Analysis Services файлы данных | \Program Files\Microsoft SQL Server\MSAS.\ | Настраивается |
Службы Reporting Services сервер отчетов | \Program Files\Microsoft SQL Server\MSRS.\Reporting Services\ReportServer\Bin\ | Настраивается |
Службы Reporting Services диспетчер отчетов | \Program Files\Microsoft SQL Server\MSRS.\Reporting Services\ReportManager\ | Фиксированный путь |
Службы Integration Services | \nnn\DTS\ 1 | Настраивается |
Клиентские компоненты (за исключением bcp.exe и sqlcmd.exe) | \nnn\Tools\ 1 | Настраивается |
Клиентские компоненты (bcp.exe и sqlcmd.exe) | \Client SDK\ODBC\nnn\Tools\Binn | Фиксированный путь |
Объекты COM для репликации и размещения на сервере | диск>:\Program Files\Microsoft SQL Server\nnn\COM\ 2 | Фиксированный путь |
Службы Integration Services библиотеки DLL служб для механизмов преобразования данных в реальном режиме времени и конвейерного преобразования данных и программа командной строки dtexec | диск>:\Program Files\Microsoft SQL Server\nnn\DTS\Binn | Фиксированный путь |
Библиотеки DLL, которые обеспечивают управляемое соединение, поддерживаемое для служб Службы Integration Services | диск>:\Program Files\Microsoft SQL Server\nnn\DTS\Connections | Фиксированный путь |
Библиотеки DLL для каждого типа перечислителей, которые поддерживают службы Службы Integration Services | диск>:\Program Files\Microsoft SQL Server\nnn\DTS\ForEachEnumerators | Фиксированный путь |
SQL Server , поставщики инструментария WMI | диск>:\Program Files\Microsoft SQL Server\nnn\Shared\ | Фиксированный путь |
Компоненты, которые разделены между всеми экземплярами SQL Server | диск>:\Program Files\Microsoft SQL Server\nnn\Shared\ | Фиксированный путь |
Убедитесь, чтобы папка \Program Files\Microsoft SQL Server\ была защищена ограниченными разрешениями.
Диск по умолчанию для расположений файлов — systemdrive, обычно диск C. Пути установки дочерних компонентов определяются путем установки родительского компонента.
1 Используется общий путь установки для Службы Integration Services и клиентских компонентов. Изменение пути установки для одного компонента влечет изменение пути для других компонентов. При последующих установках компоненты устанавливаются в расположение исходной установки.
2 Этот каталог используется всеми экземплярами SQL Server на компьютере. При применении обновления к любому из экземпляров на компьютере все файловые изменения коснутся каждого из них. При добавлении компонентов в существующую конфигурацию невозможно ни изменить расположение ранее установленного компонента, ни указать расположение нового. Необходимо либо установить дополнительные компоненты в каталоги, созданные программой установки, либо удалить продукт и установить его заново.
Для кластеризованных конфигураций необходимо выбрать локальный диск, доступный на всех узлах кластера.
При задании пути установки во время установки компонентов сервера или файлов данных программа установки использует идентификатор экземпляра в дополнение к заданному положению для программ и файлов данных. Программа установки не пользуется идентификаторами экземпляров для средств и других общих файлов. Идентификатор экземпляра также не используется для программ и файлов данных служб Службы Analysis Services , но используется для репозитория служб Службы Analysis Services .
При указании пути установки для компонента Компонент Database Engine программа установки SQL Server использует этот путь в качестве корневого каталога этой установки для всех папок, относящихся к экземпляру, включая файлы данных SQL. Если в этом случае указать в качестве корневого каталога C:\Program Files\Microsoft SQL Server\MSSQL.\MSSQL\, то каталоги, относящиеся к данному экземпляру, будут добавлены в конец этого пути.
Поэтому при использовании функции обновления USESYSDB в мастере установки SQL Server (режим установки с пользовательским интерфейсом) можно попасть в ситуацию, когда продукт окажется установленным в рекурсивной структуре папок. Например, SQLProgramFiles>\MSSQL14\MSSQL\MSSQL10_50\MSSQL\Data\. Поэтому при использовании функции USESYSDB вместо компонента Компонент Database Engine необходимо указывать путь установки файлов данных SQL.
Обычно файлы данных можно найти в дочернем каталоге с именем Data. Например, чтобы при обновлении указать путь к корневому каталогу данных системных баз данных, задайте C:\Program Files\Microsoft SQL Server\MSSQL.\, тогда файлы данных будут расположены в каталоге C:\Program Files\Microsoft SQL Server\MSSQL.\MSSQL\Data.
Где хранятся базы данных MS SQL Server: местонахождение и структура
Базы данных MS SQL Server обычно хранятся на жестком диске компьютера, на котором установлен сервер баз данных MS SQL Server. Конкретное местоположение баз данных зависит от настроек сервера. Вот пример кода, позволяющего узнать физическое местоположение базы данных в MS SQL Server:
SELECT name, physical_name FROM sys.master_files WHERE database_id = DB_ID('имя_базы_данных');
Этот код возвращает имя базы данных и ее физическое местоположение на диске.
Детальный ответ
Где хранятся базы данных MS SQL Server?
MS SQL Server — это популярная система управления базами данных, которая используется для хранения, обработки и анализа больших объемов структурированных данных. Важно понимать, где и как хранятся базы данных в MS SQL Server, чтобы эффективно управлять данными и обеспечить их целостность и безопасность. В MS SQL Server, базы данных хранятся в файловой системе операционной системы. Физическое расположение базы данных зависит от конфигурации сервера и может быть настроено администратором базы данных.
Место хранения данных и журналов транзакций
Каждая база данных в MS SQL Server состоит из минимум двух файлов: файл данных и файл журнала транзакций. Файл данных (.mdf) содержит все таблицы, представления, процедуры и другие объекты базы данных. Он также содержит данные, хранимые в таблицах. Файл данных имеет расширение .mdf и обычно указывается при создании базы данных. Файл журнала транзакций (.ldf) содержит информацию о всех изменениях, происходящих в базе данных. Он используется для восстановления данных в случае сбоя или сбоя системы. Файл журнала транзакций имеет расширение .ldf и автоматически создается вместе с файлом данных при создании базы данных.
Путь к файлам базы данных
По умолчанию, база данных MS SQL Server хранит файлы данных и файлы журнала транзакций в указанном пути на сервере. Эти пути могут быть настроены администратором базы данных при установке SQL Server. Чтобы определить путь к файлам базы данных в MS SQL Server, можно использовать следующий SQL-запрос:
SELECT name, physical_name AS CurrentLocation FROM sys.master_files WHERE database_id = DB_ID('YourDatabaseName')
В результате выполнения этого запроса вы получите имя файла и его текущее физическое расположение.
Изменение пути к файлам базы данных
Если необходимо изменить путь к файлам базы данных, то это можно сделать с помощью команды ALTER DATABASE. Ниже приведен пример кода, который демонстрирует, как изменить путь к файлам базы данных:
ALTER DATABASE YourDatabaseName MODIFY FILE (NAME = YourDataFileLogicalName, FILENAME = 'NewDataFilePath\YourDataFileName.mdf') MODIFY FILE (NAME = YourLogFileLogicalName, FILENAME = 'NewLogFilePath\YourLogFileName.ldf')
Здесь «YourDatabaseName» — это имя вашей базы данных, «YourDataFileLogicalName» и «YourLogFileLogicalName» — это логические имена ваших файлов данных и файлов журналов транзакций соответственно. «NewDataFilePath» и «NewLogFilePath» — это новые пути к файлам базы данных. После выполнения этой команды, путь к файлам базы данных будет изменен.
Заключение
В этой статье мы рассмотрели, как и где хранятся базы данных в MS SQL Server. Базы данных хранятся в файловой системе операционной системы, а каждая база данных состоит из файлов данных и файлов журналов транзакций. Место хранения данных и журналов транзакций можно изменить с помощью команды ALTER DATABASE.
Где хранятся файлы БД SQL Server: полное руководство
Файлы базы данных SQL Server хранятся в специальной папке, называемой «Папка данных». Эта папка указывается при установке SQL Server и содержит все необходимые файлы для работы базы данных. Вот пример пути к «Папке данных» по умолчанию:
C:\Program Files\Microsoft SQL Server\MSSQL\MSSQL\Data
В этой папке вы найдете различные файлы баз данных, такие как файлы данных (.mdf), файлы журналов транзакций (.ldf) и файлы резервной копии (.bak). Например, если у вас есть база данных с именем «MyDatabase», то файлы базы данных SQL Server будут иметь следующие имена:
MyDatabase.mdf (файл данных) MyDatabase_log.ldf (файл журнала транзакций)
Детальный ответ
Привет! Сегодня мы поговорим о том, где хранятся файлы баз данных в SQL Server. Это важный вопрос, поскольку понимание этого поможет нам лучше управлять базами данных и сохранять данные в безопасности. Давайте начнем!
Роли файловых групп
- Primary: Эта файловая группа содержит системные таблицы и метаданные базы данных. Обычно она имеет расширение «MDF» (Master Database File).
- Secondary: Дополнительная файловая группа, которая может содержать пользовательские таблицы и индексы. Обычно она имеет расширение «NDF» (Nonclustered Database File).
- Log: Файловая группа журнала транзакций, которая содержит журналы транзакций базы данных. Обычно она имеет расширение «LDF» (Log Database File).
Файлы баз данных
Теперь, давайте поговорим о физических файлах баз данных, которые хранят данные. Каждая файловая группа может содержать один или несколько файлов базы данных.
Файлы баз данных имеют следующие типы:
- Primary Data File: Это основной файл базы данных, который содержит все системные таблицы и пользовательские данные. Он имеет расширение «MDF».
- Secondary Data File: Дополнительные файлы базы данных, которые обычно содержат пользовательские таблицы и индексы. Они имеют расширение «NDF».
- Log File: Файл журнала транзакций, который содержит информацию о транзакциях базы данных. Он имеет расширение «LDF».
Каждый файл базы данных состоит из страниц. Страница — это минимальная единица хранения данных в базе данных SQL Server. Она имеет фиксированный размер 8 Кбайт.
Пример использования файловых групп и файлов баз данных
Давайте рассмотрим пример использования файловых групп и файлов баз данных.
-- Создание новой файловой группы ALTER DATABASE YourDatabase ADD FILEGROUP YourFilegroup; -- Добавление файла базы данных в созданную файловую группу ALTER DATABASE YourDatabase ADD FILE ( NAME = YourDataFile, FILENAME = 'C:\YourDataFile.ndf', SIZE = 100MB, MAXSIZE = UNLIMITED, FILEGROWTH = 50MB ) TO FILEGROUP YourFilegroup; -- Создание файла журнала транзакций ALTER DATABASE YourDatabase ADD LOG FILE ( NAME = YourLogFile, FILENAME = 'C:\YourLogFile.ldf', SIZE = 50MB, MAXSIZE = 2GB, FILEGROWTH = 25MB );
В приведенном выше примере мы создали новую файловую группу с именем «YourFilegroup». Затем мы добавили файл базы данных с именем «YourDataFile» в созданную файловую группу. Мы также создали файл журнала транзакций с именем «YourLogFile».
Заключение
В этой статье мы обсудили, где хранятся файлы баз данных в SQL Server. Мы узнали, что SQL Server использует файловые группы для организации и управления хранилищем данных. Мы также рассмотрели различные типы файловых групп и файлов баз данных.
Я надеюсь, что эта статья помогла вам лучше понять, как хранятся данные в SQL Server и как использовать файловые группы и файлы баз данных для управления базами данных. Удачи в изучении баз данных!
Где хранятся базы данных Microsoft SQL Server: подробный обзор
Базы данных Microsoft SQL Server хранятся в файле с расширением «.mdf» и «.ndf» для основного файла данных и дополнительных файлов данных соответственно. Логический файл журнала транзакций имеет расширение «.ldf». Вот пример создания базы данных и указания места хранения файлов данных:
USE master; GO CREATE DATABASE MyDatabase ON (NAME = 'MyDatabase_Data', FILENAME = 'C:\MyData\MyDatabase.mdf', SIZE = 10MB, MAXSIZE = UNLIMITED, FILEGROWTH = 5MB) LOG ON (NAME = 'MyDatabase_Log', FILENAME = 'C:\MyData\MyDatabase.ldf', SIZE = 5MB, MAXSIZE = 100MB, FILEGROWTH = 10%) GO
В приведенном примере, база данных с именем «MyDatabase» создается в указанной директории «C:\MyData». Файлы данных имеют размер 10MB и автоматически увеличиваются на 5MB по мере необходимости, а журнал транзакций имеет размер 5MB и увеличивается на 10% при необходимости. Пожалуйста, обратите внимание, что вы можете указать любой путь и размер файлов данных и журналов транзакций в соответствии с вашими требованиями.
Детальный ответ
- Файл данных (MDF): Это основной файл базы данных, который содержит все данные и объекты базы данных. Он имеет расширение .mdf и содержит таблицы, представления, хранимые процедуры, функции и другие объекты.
- Файл журнала транзакций (LDF): Этот файл содержит информацию о всех изменениях, сделанных в базе данных. Он используется для восстановления данных в случае сбоя или сбоя системы. Файл журнала транзакций имеет расширение .ldf.
При создании новой базы данных SQL Server создает эти два файла по умолчанию. Однако, можно настроить SQL Server для использования дополнительных файлов данных для лучшей организации и управления.
Пример:
CREATE DATABASE MyDatabase ON PRIMARY (NAME = MyDatabase_Data, FILENAME = 'C:\Data\MyDatabase.mdf', SIZE = 10MB, MAXSIZE = 100MB, FILEGROWTH = 5MB) LOG ON (NAME = MyDatabase_Log, FILENAME = 'C:\Data\MyDatabase.ldf', SIZE = 5MB, MAXSIZE = 50MB, FILEGROWTH = 2MB);
В приведенном выше примере мы создаем базу данных с именем «MyDatabase» и задаем расположение файлов данных (MyDatabase_Data.mdf) и файла журнала транзакций (MyDatabase_Log.ldf).
Отметим, что SQL Server также поддерживает создание дополнительных файлов данных и файлов журнала транзакций для распределенных баз данных и файлов, используемых в репликации и отражении.
Кроме того, SQL Server также предоставляет возможность использования файлов групп ресурсов. Это позволяет распределять файлы базы данных на несколько дисков для повышения производительности и отказоустойчивости.
Заключение
Базы данных Microsoft SQL Server хранятся на жестком диске сервера. Они представляют собой файлы данных (.mdf) и файлы журнала транзакций (.ldf). SQL Server также позволяет создавать дополнительные файлы данных и файлы журнала транзакций для лучшей организации и управления базами данных.