Чем открыть sql dump

Как восстановить файл дампа из mysqldump?

Мне дали файл базы данных MySQL, который мне нужно восстановить как базу данных на моем компьютере с Windows Server 2008.

Я пытался использовать MySQL Administrator, но я получил следующую ошибку:

Выбранный файл был создан mysqldump и не может быть восстановлен этим приложением.

Как мне заставить это работать?

Это должно быть так же просто, как запустить это:

Если дамп относится к одной базе данных, вам может потребоваться добавить строку вверху файла:

Если это был дамп многих баз данных, операторы использования уже там.

Чтобы выполнить эти команды, откройте командную строку (в Windows) и перейдите cd в каталог, где находится mysql.exe исполняемый файл (вам, возможно, придется немного поискать его, это будет зависеть от того, как вы установили mysql, т.е. отдельно или как часть пакет как WAMP). Как только вы окажетесь в этом каталоге, вы сможете просто набрать команду, как у меня выше.

Если база данных, которую вы хотите восстановить, еще не существует, вам нужно сначала создать ее.

В командной строке, если вы находитесь в том же каталоге, где находится файл дампа, используйте эти команды (с соответствующими заменами):

Вам просто нужно запустить это:

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

Чтобы выполнить эти команды, откройте командную строку (в Windows) и перейдите cd в каталог, где находится mysql.exe исполняемый файл (вам, возможно, придется немного поискать его, это будет зависеть от того, как вы установили mysql, т.е. отдельно или как часть пакет как WAMP). Как только вы окажетесь в этом каталоге, вы сможете просто набрать команду.

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

Детали будут зависеть от того, какие параметры использовались при создании файла дампа.

Запустите команду для входа в БД

Введите пароль для пользователя Затем создайте новую БД

И сделайте выход. После этого. Запустите эту команду

Затем введите в БД и введите

Или есть альтернативный способ восстановления дампа

Затем введите в БД и введите

Откройте MySQL Administrator и подключитесь к серверу

Выберите «Каталоги» слева

Щелкните правой кнопкой мыши в левом нижнем поле и выберите «Создать новую схему»

Назовите новую схему (пример: «dbn»)

Откройте командную строку Windows (cmd)

Перейдите в папку установки MySQL

Вы можете попробовать SQLyog ‘Выполнить скрипт SQL’ для импорта файлов sql / dump.

Чем открыть sql dump. Смотреть фото Чем открыть sql dump. Смотреть картинку Чем открыть sql dump. Картинка про Чем открыть sql dump. Фото Чем открыть sql dump

Если вы хотите просмотреть ход выполнения дампа, попробуйте это:

Вам, конечно, нужно установить ‘pv’. Эта команда работает только на * nix.

В качестве конкретного примера предыдущего ответа:

Мне нужно было восстановить резервную копию, чтобы я мог импортировать / перенести ее в SQL Server. Я установил только MySql, но не зарегистрировал его как службу или не добавил его в свой путь, поскольку у меня нет необходимости поддерживать его работу.

Я использовал проводник Windows, чтобы поместить мой файл дампа в C: \ code \ dump.sql. Затем открыл MySql из пункта меню «Пуск». Создал БД, затем запустил команду источника с полным путем, вот так:

Используя файл дампа 200 МБ, созданный в Linux для восстановления в Windows w / mysql 5.5, я добился большего успеха с

Подход из приглашения MySQL, чем с

Подход в командной строке, что вызвало некоторые ошибки 2006 «сервер ушел» (на окнах)

Как ни странно, служба, созданная во время (mysql) установки, ссылается на файл my.ini, который не существует. Я скопировал «большой» файл примера в my.ini, который я уже модифицировал с помощью рекомендованных увеличений.

Однострочная команда для восстановления сгенерированного SQL из mysqldump

Вы также можете использовать меню восстановления в MySQL Administrator. Вам просто нужно открыть файл резервной копии, а затем нажать кнопку восстановления.

Как восстановить базу данных MySQL с MySQLWorkbench

Вы можете запустить сброс и создать команды на вкладке запроса.

Удалите схему, если она существует

Создать новую схему

Откройте файл дампа

Чем открыть sql dump. Смотреть фото Чем открыть sql dump. Смотреть картинку Чем открыть sql dump. Картинка про Чем открыть sql dump. Фото Чем открыть sql dump

Источник

Русские Блоги

Введение в дамп SQL Server

Введение в дамп SQL Server

Ссылки

Предисловие

Во-первых, введение в SQLDumper.exe

Я использую среду SQL Server 2012, поэтому SQLDumper находится в папке C: \ Program Files \ Microsoft SQL Server \ 110 \ Shared. Мы можем запустить SQLDumper /?, Чтобы узнать, как его использовать. Шестнадцатеричный код является идентификатором элемента управления. Код для запроса SQLDumper выглядит следующим образом:

Среди них 0x0010 означает all_memory, поэтому два файла, SQLDmpr0001.mdmp и SQLDUMPER_ERRORLOG.log, будут созданы в каталоге C: \ Program Files \ Microsoft SQL Server \ 110 \ Shared, который является файлом дампа (.mdmp).

Ниже приведены некоторые из наиболее распространенных флагов дампа:

Два, DUMP в режиме SQL Server

После выполнения указанной выше команды мы найдем в D: \ Program Files \ Microsoft SQL Server \ MSSQL11.SQL2012 \ MSSQL \ Log ( Я установил пример sqlserver2012 на диск D ) В каталоге есть еще три файла, как показано ниже:

Чем открыть sql dump. Смотреть фото Чем открыть sql dump. Смотреть картинку Чем открыть sql dump. Картинка про Чем открыть sql dump. Фото Чем открыть sql dump

Выполните указанную выше команду еще раз, и появятся еще три файла, как показано на рисунке ниже:

Чем открыть sql dump. Смотреть фото Чем открыть sql dump. Смотреть картинку Чем открыть sql dump. Картинка про Чем открыть sql dump. Фото Чем открыть sql dump

Два файла SQLDUMPER_ERRORLOG.log и ERRORLOG являются общими.

Если вы хотите, чтобы SQL Server создавал файл дампа только для определенной ошибки, вы можете использовать dbcc dumptrigger. Ниже приведен пример.

После выполнения указанной выше команды в SSMS отображается следующая информация:

В-третьих, некоторые знания по анализу файлов mdmp

1. Отладка

Есть еще одно различие в отладке: нужно ли отлаживать программу во время ее работы (отладка в реальном времени) или читать анализ и отладку mdmp (посмертная отладка). Эти два тоже разные. Заставьте программу зависнуть во время отладки в реальном времени, затем установите bp (точку останова), чтобы наблюдать за поведением программы при ее выполнении. Эта статья в основном посвящена посмертной отладке.

В процессе отладки мы чаще всего анализируем информацию трассировки стека потока. Поскольку на платформе Windows приложение запускается как процесс, а процесс включает в себя поток, и поток действительно выполняет некоторые функции. Мы можем просмотреть информацию о потоке, на котором запущен SQL Server, с помощью следующей команды:

Результаты запроса следующие:

Просмотреть информацию о потоке можно также с помощью ProcessExplorer, как показано на следующем рисунке:

Чем открыть sql dump. Смотреть фото Чем открыть sql dump. Смотреть картинку Чем открыть sql dump. Картинка про Чем открыть sql dump. Фото Чем открыть sql dump

Но для этого нужна поддержка windbg, которую можноDownload and Install Debugging Tools for WindowsПосле загрузки я использую Install Debugging Tools for Windows как отдельный компонент, что означает, что я устанавливаю windbg как отдельный компонент.

Четыре, используйте windbg

Осознав вышеуказанные знания, вы можете использовать windbg для анализа.

1. Настройка окружения windbg

2. Откройте файл mdmp.

3. Проанализировать mdmp

Чем открыть sql dump. Смотреть фото Чем открыть sql dump. Смотреть картинку Чем открыть sql dump. Картинка про Чем открыть sql dump. Фото Чем открыть sql dump

После нажатия клавиши ВВОД появится информация о потоке, информация будет следующей:

3. Другое

Источник

Как восстановить базу MySQL

В данном примере показано восстановление из заранее сделанного dump-файла (с помощью mysqldump). Если нужна инструкция по созданию резервной копии, читайте Как сделать дамп базы MySQL.

Подготовка базы

Подключаемся к командной оболочке mysql:

* данной командой мы подключимся к СУБД под пользователем root. Опция -p потребует ввода пароля.

Для восстановления базы сначала необходимо ее создать:

> CREATE DATABASE db DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

При необходимости, также создаем пользователя, который будет иметь доступ к базе:

> GRANT ALL PRIVILEGES ON db.* TO dbuser@localhost IDENTIFIED BY ‘password’ WITH GRANT OPTION;

Подробнее про создание баз читайте на странице Создание и удаление баз в MySQL/MariaDB.

Из файла через командную строку

Если при создании дампа использовалась gzip, сначала распаковываем архив:

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

Команда выполняется из UNIX-shell:

* в данном примере выполняется копирование содержимого таблицы table_name из базы данных new_database_name в базу database_name.

2. Резервирование только одной таблицы.

Если восстановление не является экстренным, и мы имеем доступ к источнику данных, можно выполнить резервирование только нужной нам таблицы. Это делается командой на подобие:

После чего уже выполняем восстановление из дампа.

Возможные ошибки

В процессе восстановления мы можем столкнуться с разными ошибками. Рассмотрим их примеры.

MySQL server has gone away

Во время восстановления базы может выскочить ошибка:

at line xxx: MySQL server has gone away.

Как правило, ее причина в низком значении параметра max_allowed_packet, который отвечает за ограничение выполнения команд из файла. Посмотреть текущее значение можно командой в mysql:

> SHOW VARIABLES LIKE ‘max_allowed_packet’;

Чтобы увеличить значение параметра, открываем конфигурационный файл my.cnf:

* в некоторых версиях СУБД конфиг может находится по пути /etc/my.cnf.d/server.cnf.

В разделе [mysqldump] редактируем или добавляем:

[mysqldump]
.
max_allowed_packet = 512M

* значение для данного параметра не обязательно должно быть таким большим.

systemctl restart mariadb || systemctl restart mysql

Row size too large

Ошибка выскакивает после небольшого времени работы восстановления. Более полный текст выглядит, примерно, так:

ERROR 1118 (42000) at line 608: Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.

Причина: ошибка встречается, если в нашей базе есть большое количество текстовых полей и мы используем таблицы типа INNODB. По умолчанию, они имеют ограничение на объем данных, которые можно хранить в одной строке таблицы.

Решение:

Для решения проблемы мы можем добавить опцию innodb_strict_mode со значением 0. Данная опция регламентирует более строгий режим работы СУБД. Это грубое решение, которое позволит нам добиться результата, но мы можем выполнить настройку тонко — об этом можно прочитать на соответствующей странице блога mithrandir.ru.

Мы же сделаем все по-быстрому. Открываем конфигурационный файл СУБД — его местоположение зависит от версии и реализации, например:

* это пример расположения для базы MariaDB 10. Более точное расположение можно найти в файле /etc/my.cnf.

Приводим опцию innodb_strict_mode к виду:

[mysqld]
.
innodb_strict_mode = 0

systemctl restart mariadb

* в данном примере мы перезапустили сервис для mariadb.

Источник

Используйте утилиту Sqldumper.exe для создания файла сброса в SQL Server

В этой статье содержатся общие рекомендации для Sqldumper.exe, которая включена в SQL Server. Эта утилита используется для создания различных типов файлов сброса.

Оригинальная версия продукта: SQL Server 2019, SQL Server 2017, SQL Server 2016, SQL Server 2014, SQL Server 2012, SQL Server 2008, SQL Server 2005
Исходный номер КБ: 917825

Сводка

Утилита Sqldumper.exe включена в Microsoft SQL Server. Он создает сбросы памяти SQL Server связанных процессов для отладки. В этой статье описывается использование Sqldumper.exe для создания файла сброса для отчетов об ошибках Watson или для отладки задач.

В статье также описаны два других метода создания файлов сброса:

Управление утилитой Sqldumper.exe вручную

Запустите Sqldumper.exe в контексте папки, SQL Server изначально установлена утилита. По умолчанию путь установки утилиты Sqldumper.exe следующим образом:

:\Program Files\Microsoft SQL Server\90\Shared\SQLDumper.exe

является местообнамерщиком диска, на котором SQL Server 2005 г.

Чтобы создать файл сброса с помощью Sqldumper.exe, выполните следующие действия:

Откройте следующую папку:

:\Program Files\Microsoft SQL Server\ \Shared

В этом пути папки имеется место для одного из следующих ниже:

Убедитесь, чтоDbghelp.dll файл находится в этой папке.

Выберите > запуск, введите cmd, а затем выберите ОК.

В командной подсказке введите следующую команду и нажмите кнопку Ввод:

В этом пути папки меняется тот же SQL Server, как описано ранее.

Чтобы создать определенный тип файла сброса, введите соответствующую команду в командной подсказке и нажмите кнопку Ввод:

Полный файл сброса

Файл мини-свалки, который включает косвенно ссылаемую память. Это рекомендуемый вариант, который также используется SQL Server по умолчанию при сбросе автоматической генерации памяти

Фильтрованный файл сброса

является местообнамерщиком для идентификатора процесса Windows приложения, для которого необходимо создать файл сброса.

Если Sqldumper.exe успешно выполняется, утилита создает файл сброса в папке, где установлена утилита.

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

Получение идентификатора процесса Windows Майкрософт

Чтобы создать файл сброса с помощью Sqldumper.exe, необходимо иметь идентификатор процесса Windows приложения, для создания файла демпинга. Вот как получить идентификатор процесса:

Кроме того, SQL Server файл журнала ошибок для получения идентификатора процесса SQL Server приложения, запущенного на компьютере. Часть файла журнала ошибок SQL Server похожа на эту:

Номер, который появится после, — это идентификатор процесса Server process ID для Sqlservr.exe процесса.

Путь вывода для свалок памяти

SQLDumper.exe существует в основном для создания сбросов памяти для процесса SQL Server в сценариях, где для решения определенных проблем (исключения, утверждения, неурожайные планиры и т. д.). В таких случаях SQL Server вызывает SQLDumper.exe для создания свалки памяти процесса. Свалка памяти хранится в каталоге SQL msSQL\LOG \ по умолчанию.

Изменение пути по умолчанию

Если в некоторых случаях размер свалки слишком велик, например, вы можете изменить путь, делая следующее:

Когда утилита Sqldumper.exe используется вручную для создания файла сброса для любого приложения Windows, файл сброса может быть таким же большим, как память, Windows приложение в настоящее время использует. Убедитесь, что на диске, на котором Sqldumper.exe утилита записывал файл сброса, доступно достаточное пространство диска.

Укажите настраиваемую папку вывода в команде

Вы можете указать каталог, в котором Sqldumper.exe для записи файла сброса. Каталог должен уже существовать перед запуском Sqldumper.exe утилиты. В противном случае Sqldumper.exe сбой. Не используйте путь UNC в качестве расположения для файла сброса. Ниже приводится пример указания расположения файла сброса в файле мини-свалки:

Выберите > запуск, введите cmd, а затем выберите ОК.

В командной подсказке введите следующую команду и нажмите кнопку Ввод:

Введите следующую команду в командной подсказке и нажмите кнопку Ввод:

является местообладателями каталога, в котором Sqldumper.exe для записи файла сброса. По умолчанию файл пишется в текущую папку.

Если указать полный файл сброса или отфильтрованный файл сброса, который будет создан, Sqldumper.exe может занять несколько минут для создания файла сброса. Время зависит от следующих переменных:

В течение этого времени Sqldumper.exe не обрабатывает команды. Вы заметите, что сервер перестал отвечать. Кроме того, может произойти сбой кластера.

Требования к разрешению

Чтобы запустить Sqldumper.exe, необходимо войти в Windows с помощью одного из следующих методов:

Для успешной Sqldumper.exe удаленного рабочего стола или служб терминалов необходимо запустить службы удаленного рабочего стола или терминала в консольном режиме. Например, чтобы запустить удаленный рабочий стол в консольном режиме, выберите Запуск > запуска, введите mstsc/console, а затем выберите ОК. Если целевой сервер Windows 2000, параметр /console игнорируется. Подключиться к серверу можно с помощью удаленного рабочего стола. Но сеанс консоли не используется.

Если вы заметили, что после запуска утилиты Sqldumper.exe в текущей папке не было сгенерировано никакого файла сброса, просмотрите сведения, созданные утилитой в командной строке, чтобы попытаться определить возможную причину сбоя. Эти сведения также регистрируются в файле Sqldumper_errorlog.log в текущем каталоге. Ниже приводится два возможных сообщения об ошибке и их причины:

Недействительный ID процесса был передан Sqldumper.exe утилите.

Недействительное значение для потока id — ошибка параметра

Недействительный параметр был передан Sqldumper.exe утилите.

Если создается сообщение об ошибке, похожее на одно из следующих сообщений, вы можете смело игнорировать это сообщение:

Неизвестный тип вызова во время minidump 6
Неизвестный тип вызова во время minidump 7

Влияние генерации демпинга

При запросе сброса процесса пользовательского режима (как об этом говорится в этой статье, для сравнения с сбросами ядра операционной системы, которые находятся за пределами нашей области), целевой процесс (здесь SQLServer.exe) замораживается на время, необходимое для сериализации контента свалки до целевого файла.

Замораживание означает, что процесс не сможет выполнить любой запрос пользователя или любую внутреннюю операцию, включая любой механизм опроса ресурсов, например реализацию isAlive и Looks Alive в Windows clustering (см. раздел «Свалки памяти на сбойных действиях кластера» для подробных сведений об обработке этой ситуации). В результате заморозки также может быть нарушено любое время от времени работы с настенными часами.

Как можно извлечь из предыдущего утверждения, длительность замораживания здесь является критическим фактором и определяется следующим образом:

Кроме того, следует запланить размер файла сброса на диске, особенно если существует возможность нескольких свалок и если выбраны крупные, не по умолчанию типы свалок. Убедитесь, что вы просматривали типы dump, чтобы узнать, чего ожидать. По умолчанию некоторые методы сброса создадут свалку в папке SQL Server \Log, которая в простой конфигурации по умолчанию также будет системным диском и диском data+log для SQL Server. Приведение этого диска к насыщению будет иметь серьезные последствия для SQL Server и/или доступности системы.

Управление влиянием на кластерные системы

Во время создания сброса процесс временно приостановлен. Это может повлиять на доступность SQL Server и вызвать сбой ресурсов в контекстах Always On (как экземпляр кластера failover, так и группа доступности). Генерация демпов различных процессов влияет на ресурсы по-разному. Внимательно ознакомьтесь с разделами Impact of dump generation and Dump types.

При захвате файла сброса SQL Server процесса (особенно фильтрованного файла сброса или полного файла сброса) в кластерном SQL Server или экземпляре SQL Server с экземпляром Always On availability group (AG) кластеризация SQL Server или AG может привести к сбой в другом узле, если файл сброса занимает слишком много времени. Чтобы предотвратить сбой, перед захватом файла сброса используйте следующие параметры. Изменение можно отменить после того, как будет взят файл сброса:

Улучшения продукта, чтобы уменьшить влияние на SQL Server

К последним версиям SQL Server добавлены три основных улучшения, которые уменьшают размер файла сброса и/или время создания свалки памяти:

Механизм фильтрации Bitmap.

Устранение повторных свалок по одной и той же проблеме.

Сокращение выходных данных в журнале ошибок.

Механизм фильтрации bitmap: SQL Server немного карты, которая отслеживает страницы памяти, которые будут исключены из фильтрованной свалки. Sqldumper.exe считывая bitmap и отфильтровывая страницы без необходимости чтения метаданных другого диспетчера памяти. Вы увидите следующие сообщения в журнале ошибок SQL Server, если bitmap включена или отключена соответственно:

Page exclusion bitmap is enabled. и Page exclusion bitmap is disabled.

Начиная с SQL Server 2016 ГОДА SP2 CU13 фильтрация bitmap включена по умолчанию.

Это включено по умолчанию в SQL Server RTM 2019. Его можно отключить с помощью T8095.

Устранение повторных свалок по одной и той же проблеме: Повторяемая свалка памяти по одной и той же проблеме устраняется. Используя подпись стека, SQL отслеживает, если исключение уже произошло, и не будет производить новую свалку памяти, если она уже существует. Это относится к нарушениям доступа, переполнению стеков, утверждений и исключений коррупции индекса. Это значительно уменьшает количество дискового пространства, используемого сбросами памяти, и не замораживает процесс, временно для создания свалки. Это было добавлено в SQL Server 2019 г.

Сокращенный выход в журнале Error: Контент, созданный в журнале SQL Server ошибки из одной свалки памяти, не может быть не только подавляющим, но и замедлял процесс создания свалки памяти из-за того, что вся эта информация должна быть сериализирована в текстовый формат в журнале Error. В SQL Server 2019 г. контент, хранимый в журнале Error при генерации сброса, значительно сократился, и он может выглядеть так:

Ранее SQL Server печатали сведения для каждого сеанса/потока, когда пользователь запускал ручную свалку.

Факторы, которые препятствуют или задерживают создание свалок памяти

На основе опыта поддержки Microsoft CSS известно, что несколько факторов вызывают задержки или препятствуют созданию свалок памяти.

Типы сброса

Описанные методы способны создавать три различных типа свалок: мини-свалки, полные свалки и фильтруемые свалки.

Мини-свалки со ссылкой на память

Этот тип сброса памяти — это снимок всех активных потоков процесса («потоковые стеки»), а также ограниченный экстракт памяти, ссылаясь на стеки потоков и некоторые другие данные процесса/потока. Обычно они имеют несколько мегабайт и быстро генерируются (от секунды до нескольких секунд). Даже более крупные серверные системы (с сотнями ЦП косвенного вождения огромного количества потоков в SQL Server процессе) редко превышает 20-30 МБ: размер мини-свалки не растет с размером SQL Server процесса. Этот тип сброса — тип по умолчанию, используемый SQL Server при автоматическом создании свалок памяти на исключениях, проблемах планировщика, проблемах с защелкой и т. д.

SQL Server в рамках встроенного приборного оборудования в определенных ситуациях будет создаваться автоматические «диагностические мини-свалки». Поэтому эта операция считается достаточно безопасной, SQL Server при необходимости она может запускаться автоматически.

Полные сбросы

Полная свалка памяти — это полная копия активного целевого пространства процесса. Таким образом, это включает все состояние потока, всю выделенную память процесса и все загруженные модули. Таким образом, у полных свалок будет размер, примерно такой же SQL Server процесса, который, в свою очередь, может быть почти таким же большим, как общая оперативная память системы. На больших серверах, посвященных одному экземпляру SQL Server, это может означать файл, который составляет несколько сотен гигабайт или более. Нет необходимости говорить, что создание такого файла займет много времени и, следовательно, будет вызывать длительное замораживание. Производительность диска для целевого файла сброса будет основным драйвером для замораживания времени. Этот вид сброса редко используется для SQL Server**, как объясняется в следующем описании типа.

Фильтруемая свалка

По мере того как размер оперативной памяти типичных серверов, работающих SQL Server, постоянно увеличивался, полные сбросы становились все более громоздкими. Поэтому были реализованы фильтруемые свалки: они являются подмножество полных свалок, где большие области структур памяти, относящиеся к SQL Server, намеренно игнорируются и не сериализируются на диск, так как они не приносят дополнительных значений устранения неполадок (как правило, страницы данных и индексов, некоторые внутренние кэши, такие как страницы данных Hekaton и память пула журналов). Это приводит к файлу, который меньше полной свалки, сохраняя при этом практически всю свою полезность, и это заменило полные сбросы в качестве предпочтительного варианта в подавляющем большинстве ситуаций, когда мини-свалок было недостаточно. Уменьшение размера по сравнению с полным сбросом может сильно отличаться, но это все равно довольно большой файл, который часто составляет 30-60% от SQL Server процесса, поэтому лучше планировать возможный размер, такой же большой, как полная свалка, как худший вариант, который должен оставить хороший запас прочности. Фильтруемая свалка может быть не обязательно быстрее, чем полная свалка в каждом случае: вопрос в том, будут ли доходы, привязанные к количеству избегаемого IO, превышать время, необходимое для реализации логики фильтра (так что скорость диска и скорость ЦП/оперативной памяти будут влиять на это).

Вы можете использовать Sqldumper.exe для создания файла сброса по запросу для любого приложения Windows Microsoft. Например, вы можете создать файл сброса для отладки проблемы приложения, если компьютер с Microsoft SQL Server не отвечает на запросы пользователей. Файл сброса может быть мини-файлом или полным файлом сброса. Фильтрованный файл сброса применим и осмыслен только в контексте SQL Server.

Процесс SQL Server вызывает утилиту Sqldumper.exe внутренне для создания файла сброса, когда процесс испытывает любые исключения. SQL Server передает флаги в Sqldumper.exe утилиту. Флаги трассировки можно использовать для изменения флагов, которые SQL Server в утилиту в контексте исключения или в контексте утверждения. Эти флаги трассировки находятся в диапазоне от 2540 до 2559. Эти флаги трассировки можно использовать для создания определенных типов файлов сброса. Например:

Если активны два или несколько флагов трассировки, параметр, указывающий на самую большую свалку памяти, будет соблюдаться. Например, если используются флаги трассировки 2551 и 2544, SQL Server создаст полную свалку памяти.

Создание свалки памяти для сбойов кластера

В сценариях сбой кластера SQL Server DLL может получить файл сброса перед сбойом, чтобы помочь в устранении неполадок. Если SQL Server DLL определяет, что ресурс SQL Server не работает, SQL Server DLL использует утилиту Sqldumper.exe для получения файла сброса SQL Server процесса. Чтобы убедиться, что Sqldumper.exe успешно создает файл сброса, необходимо задать в качестве необходимых условий следующие три свойства:

Если одно из свойств не установлено, Sqldumper.exe не может создать файл сброса. Предупреждение будет входить как в журнал событий, так и в журнал кластера всякий раз, когда ресурс будет доставлен в Сеть.

Конфигурация кластера для SQLDumper в SQL Server 2012 г. и более поздних версиях

Для изменения этих свойств можно использовать команду ALTER SERVER CONFIGURATION T-SQL. Например:

Кроме того, можно использовать скрипты PowerShell. Например, для имени экземпляра SQL2017AG:

Чтобы проверить примененные параметры, можно выполнить команду PowerShell:

Конфигурация кластера для SQLDumper SQL Server 2008/2008 R2 или Windows 2012 и более ранних версий

Чтобы установить свойства Sqldumper.exe для сбойной передачи кластера, выполните следующие действия:

Свойство Для набора свойства для определенного типа файла сброса введите соответствующую команду в командной подсказке и нажмите SqlDumperDumpFlags SqlDumperDumpFlags кнопку Ввод:

Весь файл сброса полного потока

Экземпляр по умолчанию

Экземпляр с именем

Весь файл мини-свалки потоков

Экземпляр по умолчанию

Экземпляр с именем

Фильтрация всего файла сброса потоков

Экземпляр по умолчанию

Экземпляр с именем

DirectoryPath является местообладателями каталога, в котором будет создан файл сброса, и он должен быть указан в кавычках («»).

является держателем времени в миллисекунд (ms).

Время создания файла сброса SQL Server зависит от конфигурации компьютера. Для компьютера с большим количеством воспоминаний время может быть значительным. Чтобы получить оценку времени, которое занимает процесс, используйте Sqldumper.exe, чтобы вручную создать файл сброса. Допустимые значения для SqlDumperDumpTimeOut свойства : от 10 000 мс до MAXDWORD. MAXDWORD представляет самое высокое значение в диапазоне типа данных DWORD (4294967295).

Чтобы убедиться, что параметры включены, можно выполнить следующую команду:

Удаление Sqldumper.exe свойств для сбойной передачи кластера

Чтобы удалить свойства Sqldumper.exe для неудачной остановки кластера, выполните следующие действия:

Экземпляр по умолчанию

Экземпляр с именем

Экземпляр по умолчанию

Экземпляр с именем

Экземпляр по умолчанию

Экземпляр с именем

Использование DBCC STACKDUMP

Команда может помочь вам создать свалку памяти в каталоге ЖУРНАЛА установки DBCC STACKDUMP SQL Server экземпляра. Команда по умолчанию создаст мини-команду со всеми потоками, которая имеет ограниченный размер и является адекватной для отражения состояния SQL Server процесса. Просто выполните следующую команду в SQL Server клиенте:

Расширенные функциональные возможности SQL Server 2019 г. см. в расширенных функциональных возможностях DBCC STACKDUMP DBCC STACKDUMP, внедренных в SQL Server 2019 г.

Чтобы этот метод создал фильтрованную свалку, включим флаги трассировки 2551 со следующей командой:

Чтобы создать полную свалку, используйте флаг трассировки 2544.

После получения файла сброса необходимо отключить флаг трассировки, используя следующую команду, чтобы не допустить случайного обновления всех дополнительных SQL Server минимиз до более крупных свалок:

Где TraceNumber флаг трассировки, который вы ранее включили, например 2551 или 2544.

В случае, если вы не уверены, какой флаг трассировки остается активным, можно выполнить:

Пустой набор результатов указывает, что флаг трассировки не активен. И наоборот, если 2551 по-прежнему активен, вы увидите:

TraceFlagСтатусГлобальныеSession
2551110

Включенное traceflag устройство DBCC TRACEON сбрасывается (удаляется) после перезапуска службы.

Расширенные функциональные возможности DBCC STACKDUMP, SQL Server 2019 г.

Начиная с SQL Server 2019 cu2, команда была расширена для поддержки создания свалок различных типов: мини, фильтруются, полные сбросы, что устраняет необходимость использования флагов DBCC STACKDUMP трассировки. Это также позволяет ограничить выход текста в дополнительном текстовом файле, который создается с помощью свалки памяти. Это может обеспечить видимый прирост производительности за SQLDumper.exe создания свалки памяти.

Это TEXT_DUMP = LIMITED параметр по умолчанию. Если вы хотите получить подробный вывод в файле SQLDump000X.txt, который можно TEXT_DUMP = DETAILED использовать.

Использование сценария PowerShell для создания файла сброса с помощью SQLDumper

Сохраните следующий код в качестве файла ps1, например SQLDumpHelper.ps1:

Запустите его из командной подсказки в качестве администратора с помощью следующей команды:

Или запустите его Windows PowerShell консоли и запустите в качестве администратора с помощью следующей команды:

Если вы никогда не выполняли сценарии PowerShell в вашей системе, вы можете получить сообщение об ошибке:

Вы должны включить возможность запускать их следующими шагами:

Начните Windows PowerShell консоли с параметром Run as Administrator. Изменить политику выполнения могут только члены группы администраторов на компьютере.

Включить запуск неподписаных скриптов по следующей команде:

Это позволит запускать неподписаные скрипты, которые вы создаете на локальном компьютере и подписанные скрипты из Интернета.

Источник

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

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