Где хранятся базы данных sql server
Перейти к содержимому

Где хранятся базы данных sql server

  • автор:

Расположение файлов для экземпляра по умолчанию и именованных экземпляров 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.

Где хранятся базы данных 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 также позволяет создавать дополнительные файлы данных и файлы журнала транзакций для лучшей организации и управления базами данных.

Где хранятся файлы БД 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 и как использовать файловые группы и файлы баз данных для управления базами данных. Удачи в изучении баз данных!

Место хранения базы данных

Применимо к: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Часто бывают ситуации, когда администратор базы данных SQL Server Analysis Services (dba) хочет, чтобы определенная база данных находились за пределами папки данных сервера. Обычно это связано с производственной необходимостью (например, чтобы повысить производительность или расширить хранилище). В таких ситуациях свойство базы данных DbStorageLocation позволяет SQL Server Analysis Services dba указать расположение базы данных на локальном диске или сетевом устройстве.

Свойство DbStorageLocation базы данных

Свойство базы данных DbStorageLocation указывает папку, в которой SQL Server Analysis Services создает и управляет всеми файлами данных и метаданных базы данных. Все файлы метаданных хранятся в папке DbStorageLocation , за исключением файла метаданных базы данных, который хранится в папке данных сервера. При изменении свойства DbStorageLocation базы данных следует руководствоваться следующими двумя важными соображениями.

  • В свойстве базы данных DbStorageLocation должен быть задан путь к существующей папке в формате UNC или пустая строка. Пустая строка по умолчанию указывает на папку данных сервера. Если папка не существует, при выполнении команды Create, Attachили Alter возникнет ошибка.
  • Свойство DbStorageLocation базы данных не может указывать на папку данных сервера или любую вложенную в нее папку. В противном случае при выполнении команды Create, Attachили Alter возникнет ошибка.

При использовании сети хранения данных (SAN), сети на основе iSCSI или локально подключенного диска рекомендуется указывать путь в формате UNC. Указание пути в формате UNC к сетевой папке или любым хранилищам с высокой задержкой сделает установку неподдерживаемой.

Сравнение свойств DbStorageLocation и StorageLocation

СвойствоDbStorageLocation указывает на папку, в которой находятся все файлы данных и метаданных, относящиеся к базе данных, тогда как свойство StorageLocation указывает на папку, в которой находятся одна или несколько секций куба. СвойствоStorageLocation можно задать независимо от свойства DbStorageLocation. Это SQL Server Analysis Services решение dba на основе ожидаемых результатов, и во многих случаях использование одного или другого свойства будет перекрываться.

Использование свойства DbStorageLocation

Свойство DbStorageLocation базы данных должно включаться в команду базы данных Create в последовательности команд Detach/Attach , Backup/Restore или в команде Synchronize . Изменение свойства DbStorageLocation связано со структурными изменениями объекта базы данных. Это означает, что все метаданные будут созданы повторно, а данные повторно обработаны.

Место хранения базы данных не следует изменять командой Alter . Вместо этого рекомендуется использовать последовательность команд отсоединения/ базы данных (см. статьи Перемещение базы данных служб Analysis Services, Присоединение и отсоединение баз данных Служб Analysis Services).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *