Как обновить базу данных
Перейти к содержимому

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

  • автор:

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

В MySQL для обновления применяется sql-команда UPDATE :

UPDATE Таблица SET столбец1 = значение1, столбец2 = значение2. WHERE столбец = значение

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

CREATE TABLE Users (id INTEGER AUTO_INCREMENT PRIMARY KEY, name VARCHAR(30), age INTEGER)
Объектно-ориентированный стиль

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

   METANIT.COM  

Список пользователей

connect_error)< die("Ошибка: " . $conn->connect_error); > $sql = "SELECT * FROM Users"; if($result = $conn->query($sql))< echo ""; foreach($result as $row)< echo ""; echo ""; echo ""; echo ""; echo ""; > echo "
ИмяВозраст
" . $row["name"] . "" . $row["age"] . "Изменить
"; $result->free(); > else< echo "Ошибка: " . $conn->error; > $conn->close(); ?>

Здесь используется команда SELECT, которая получает всех пользователей из таблицы Users. В таблице третий столбец хранит ссылку на скрипт update.php, который мы далее создадим и которому передается параметр id с идентификатором пользователя, которого надо изменить.

Для обновления данных определим скрипт update.php :

connect_error)< die("Ошибка: " . $conn->connect_error); > ?>   METANIT.COM  real_escape_string($_GET["id"]); $sql = "SELECT * FROM Users WHERE "; if($result = $conn->query($sql))< if($result->num_rows > 0) < foreach($result as $row)< $username = $row["name"]; $userage = $row["age"]; >echo "

Обновление пользователя

Имя:

Возраст:

"; > else< echo "
Пользователь не найден
"; > $result->free(); > else< echo "Ошибка: " . $conn->error; > > elseif (isset($_POST["id"]) && isset($_POST["name"]) && isset($_POST["age"])) < $userid = $conn->real_escape_string($_POST["id"]); $username = $conn->real_escape_string($_POST["name"]); $userage = $conn->real_escape_string($_POST["age"]); $sql = "UPDATE Users SET name = '$username', age = '$userage' WHERE "; if($result = $conn->query($sql)) < header("Location: index.php"); >else< echo "Ошибка: " . $conn->error; > > else < echo "Некорректные данные"; >$conn->close(); ?>

Весь код обновления структурно делится на две части. В первой части мы обрабатываем запрос GET. Когда пользователь нажимает на ссылку «Обновить» на странице index.php , то отправляется запрос GET, в котором передается id редактируемого пользователя.

if($_SERVER["REQUEST_METHOD"] === "GET" && isset($_GET["id"]))

И если это запрос GET, то нам надо вывести данные редактируемого пользователя в поля формы. Для этого получаем из базы данных объект по переданному id

$userid = $conn->real_escape_string($_GET["id"]); $sql = "SELECT * FROM Users WHERE "; if($result = $conn->query($sql))

Далее получаем полученные данные и, если они имеются, выводим их в поля формы. Таким образом, пользователь увидит на форме данные обновляемого объекта.

Вторая часть скрипта представляет обработку POST-запроса - когда пользователь нажимает на кнопку на форме, то будет отправляться POST-запрос с отправленными данными. Мы получаем эти данные и отправляем базе данных команду UPDATE с этими данными, используя при этом параметризацию запроса:

$userid = $conn->real_escape_string($_POST["id"]); $username = $conn->real_escape_string($_POST["name"]); $userage = $conn->real_escape_string($_POST["age"]); $sql = "UPDATE Users SET name = '$username', age = '$userage' WHERE "; if($result = $conn->query($sql))

После выполнения запроса к БД перенаправляем пользователя на скрипт index.php с помощью функции

header("Location: index.php");

Таким образом, пользователь обращается к скрипту index.php , видит таблицу с данными и нажимает на ссылку "Обновить" в одной из строк.

Вывод данных из MySQL в PHP и pdo

После нажатия его перебрасывает на скрипт update.php , который выводит данные редактируемого объекта. Пользователь изменяет данные и нажимает на кнопку.

Редактирование данных из MySQL в PHP и pdo

Данные в запросе POST отправляются этому же скрипту update.php , который сохраняет данные и перенаправляет пользователя обратно на index.php .

Изменение данных из MySQL в PHP и pdo

Процедурный стиль
   METANIT.COM  

Список пользователей

$sql = "SELECT * FROM Users"; if($result = mysqli_query($conn, $sql))< echo ""; foreach($result as $row)< echo ""; echo ""; echo ""; echo ""; echo ""; > echo "
ИмяВозраст
" . $row["name"] . "" . $row["age"] . "Изменить
"; mysqli_free_result($result); > else < echo "Ошибка: " . mysqli_error($conn); >mysqli_close($conn); ?>
 ?>   METANIT.COM   0) < foreach($result as $row)< $username = $row["name"]; $userage = $row["age"]; >echo "

Обновление пользователя

Имя:

Возраст:

"; > else< echo "
Пользователь не найден
"; > mysqli_free_result($result); > else < echo "Ошибка: " . mysqli_error($conn); >> elseif (isset($_POST["id"]) && isset($_POST["name"]) && isset($_POST["age"])) < $userid = mysqli_real_escape_string($conn, $_POST["id"]); $username = mysqli_real_escape_string($conn, $_POST["name"]); $userage = mysqli_real_escape_string($conn, $_POST["age"]); $sql = "UPDATE Users SET name = '$username', age = '$userage' WHERE "; if($result = mysqli_query($conn, $sql))< header("Location: index.php"); >else < echo "Ошибка: " . mysqli_error($conn); >> else < echo "Некорректные данные"; >mysqli_close($conn); ?>

Обновление базы данных при помощи отсоединения и присоединения (Transact-SQL)

В этом разделе описывается, как использовать операции отсоединения и подключения для обновления базы данных в SQL Server. После подключения к SQL Server база данных доступна немедленно и автоматически обновляется. Это предотвращает использование базы данных с более старой версией ядра СУБД. Тем не менее обновление метаданных не влияет на режим совместимости базы данных. Дополнительные сведения см. в разделе уровень базы данных совместимости после обновления далее в этой статье.

В этом разделе

  • Перед началом: ОграниченияРекомендации
  • Обновление базы данных SDL ServerИспользование операций отсоединения и присоединения
  • Дальнейшие действия.После обновления базы данных SQL Server

Перед началом

Ограничения

  • Системные базы данных не могут быть присоединены.
  • Присоединение и отсоединение приводят к отмене межбазовых цепочек владения для базы данных с присваиванием параметру cross db ownership chaining значения 0. Сведения о том, как включить цепочки владения, см. в статье Параметр конфигурации сервера "cross db ownership chaining".
  • Присоединение скопированной, а не отсоединенной реплицируемой базы данных:
    • если база данных присоединяется к обновленной версии того же экземпляра сервера, необходимо обновить репликацию после завершения присоединения с помощью хранимой процедуры sp_vupgrade_replication. Дополнительные сведения см. в разделе sp_vupgrade_replication (Transact-SQL).
    • если база данных присоединяется к другому экземпляру сервера (независимо от версии), необходимо удалить репликацию после завершения присоединения с помощью хранимой процедуры sp_removedbreplication. Дополнительные сведения см. в разделе sp_removedbreplication (Transact-SQL).

    Рекомендации

    Не рекомендуется подключать или восстанавливать базы данных, полученные из неизвестных или ненадежных источников. В этих базах данных может содержаться вредоносный код, вызывающий выполнение непредусмотренных инструкций Transact-SQL или появление ошибок из-за изменения схемы или физической структуры базы данных. Перед тем как использовать базу данных, полученную из неизвестного или ненадежного источника, выполните на тестовом сервере инструкцию DBCC CHECKDB для этой базы данных, а также изучите исходный код в базе данных, например хранимые процедуры и другой пользовательский код.

    Обновление базы данных при помощи функций отсоединения и присоединения

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

    Заметка При попытке присоединить базу данных, не указывая файл журнала, операцией присоединения будет произведен поиск файла журнала в его исходном месте. Если первоначальная копия журнала существует в этом расположении, она будет присоединена. Чтобы избежать применения исходного файла журнала, либо укажите путь к новому файлу журнала, либо удалите исходную его копию (после его копирования в новое место).

    пример

    В следующем примере выполняется обновление копии базы данных предыдущей версии SQL Server. Инструкции Transact-SQL выполняются в окне редактора запросов, подключенном к экземпляру сервера, к которому подключен.

      Отсоедините базу данных, выполнив следующие инструкции Transact-SQL:

    USE master; GO EXEC sp_detach_db @dbname = N'MyDatabase'; GO 

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

    USE master; GO CREATE DATABASE MyDatabase ON (FILENAME = 'C:\MySQLServer\MyDatabase.mdf'), (FILENAME = 'C:\MySQLServer\Database.ldf') FOR ATTACH; GO 

    Продолжение: после обновления базы данных SQL Server

    Если база данных содержит полнотекстовые индексы, то в процессе обновления будет произведен их импорт, сброс или перестроение в зависимости от установленного значения свойства сервера upgrade_option . Если при обновлении выбран режим импорта (upgrade_option = 2) или перестроения (upgrade_option = 0), полнотекстовые индексы во время обновления будут недоступны. В зависимости от объема индексируемых данных процесс импорта может занять несколько часов, а перестроение — в несколько (до десяти) раз больше. Обратите внимание, что если для обновления выбран режим «Импортировать», а полнотекстовый каталог недоступен, то связанные с ним полнотекстовые индексы будут перестроены. Чтобы изменить значение свойства сервера upgrade_option , следует использовать процедуру sp_fulltext_service.

    Уровень совместимости баз данных после обновления

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

    Например, если вы подключаете базу данных, которая была уровнем совместимости 90 перед присоединением к экземпляру SQL Server 2019 (15.x), после обновления уровня совместимости установлено значение 100, что является самым низким поддерживаемым уровнем совместимости в SQL Server 2019 (15.x). Дополнительные сведения см. в разделе Уровень совместимости ALTER DATABASE (Transact-SQL).

    Управление метаданными в экземпляре обновленного сервера

    Чтобы обеспечить согласованное функционирование базы данных для пользователей и приложений, когда она присоединяется к другому экземпляру сервера, на другом экземпляре сервера, возможно, понадобится повторно создать некоторые или все метаданные базы данных, например имена входа, задания и разрешения. Дополнительные сведения см. в статье Управление метаданными при обеспечении доступности базы данных на другом экземпляре сервера (SQL Server).

    Алгоритм шифрования главного ключа службы и главного ключа базы данных изменяется с 3DES на AES

    SQL Server 2012 (11.x) и более поздних версий использует алгоритм шифрования AES для защиты главного ключа службы (SMK) и главного ключа базы данных (DMK). AES - это новый алгоритм шифрования, отличный от алгоритма 3DES, используемого в более ранних версиях. При первом присоединении базы данных к новому экземпляру SQL Server или ее восстановлении копия главного ключа базы данных (зашифрованная главным ключом службы) еще не хранится на сервере. Необходимо расшифровать главный ключ базы данных с помощью инструкции OPEN MASTER KEY . Как только главный ключ базы данных будет расшифрован, появится возможность разрешить автоматическую расшифровку в будущем с помощью инструкции ALTER MASTER KEY REGENERATE , чтобы оставить на сервере копию главного ключа базы данных, зашифрованного с помощью главного ключа службы. После обновления базы данных с переходом от более ранней версии главный ключ базы данных должен быть создан повторно для использования нового алгоритма шифрования AES. Дополнительные сведения о повторном создании главного ключа базы данных см. в статье ALTER MASTER KEY (Transact-SQL). Время, необходимое для повторного создания главного ключа базы данных с обновлением до алгоритма шифрования AES, зависит от числа объектов, защищаемых главным ключом базы данных. Повторное создание главного ключа базы данных с обновлением до алгоритма шифрования AES необходимо произвести только один раз. Это никак не повлияет на последующие операции повторного создания, выполняемые в соответствии со стратегией смены ключей.

    Обратная связь

    Были ли сведения на этой странице полезными?

    Обновление базы данных при помощи отсоединения и присоединения (Transact-SQL)

    В этом разделе описывается, как использовать операции отсоединения и подключения для обновления базы данных в SQL Server. После подключения к SQL Server база данных доступна немедленно и автоматически обновляется. Это предотвращает использование базы данных с более старой версией ядра СУБД. Тем не менее обновление метаданных не влияет на режим совместимости базы данных. Дополнительные сведения см. в разделе уровень базы данных совместимости после обновления далее в этой статье.

    В этом разделе

    • Перед началом: ОграниченияРекомендации
    • Обновление базы данных SDL ServerИспользование операций отсоединения и присоединения
    • Дальнейшие действия.После обновления базы данных SQL Server

    Перед началом

    Ограничения

    • Системные базы данных не могут быть присоединены.
    • Присоединение и отсоединение приводят к отмене межбазовых цепочек владения для базы данных с присваиванием параметру cross db ownership chaining значения 0. Сведения о том, как включить цепочки владения, см. в статье Параметр конфигурации сервера "cross db ownership chaining".
    • Присоединение скопированной, а не отсоединенной реплицируемой базы данных:
      • если база данных присоединяется к обновленной версии того же экземпляра сервера, необходимо обновить репликацию после завершения присоединения с помощью хранимой процедуры sp_vupgrade_replication. Дополнительные сведения см. в разделе sp_vupgrade_replication (Transact-SQL).
      • если база данных присоединяется к другому экземпляру сервера (независимо от версии), необходимо удалить репликацию после завершения присоединения с помощью хранимой процедуры sp_removedbreplication. Дополнительные сведения см. в разделе sp_removedbreplication (Transact-SQL).

      Рекомендации

      Не рекомендуется подключать или восстанавливать базы данных, полученные из неизвестных или ненадежных источников. В этих базах данных может содержаться вредоносный код, вызывающий выполнение непредусмотренных инструкций Transact-SQL или появление ошибок из-за изменения схемы или физической структуры базы данных. Перед тем как использовать базу данных, полученную из неизвестного или ненадежного источника, выполните на тестовом сервере инструкцию DBCC CHECKDB для этой базы данных, а также изучите исходный код в базе данных, например хранимые процедуры и другой пользовательский код.

      Обновление базы данных при помощи функций отсоединения и присоединения

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

      Заметка При попытке присоединить базу данных, не указывая файл журнала, операцией присоединения будет произведен поиск файла журнала в его исходном месте. Если первоначальная копия журнала существует в этом расположении, она будет присоединена. Чтобы избежать применения исходного файла журнала, либо укажите путь к новому файлу журнала, либо удалите исходную его копию (после его копирования в новое место).

      пример

      В следующем примере выполняется обновление копии базы данных предыдущей версии SQL Server. Инструкции Transact-SQL выполняются в окне редактора запросов, подключенном к экземпляру сервера, к которому подключен.

        Отсоедините базу данных, выполнив следующие инструкции Transact-SQL:

      USE master; GO EXEC sp_detach_db @dbname = N'MyDatabase'; GO 

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

      USE master; GO CREATE DATABASE MyDatabase ON (FILENAME = 'C:\MySQLServer\MyDatabase.mdf'), (FILENAME = 'C:\MySQLServer\Database.ldf') FOR ATTACH; GO 

      Продолжение: после обновления базы данных SQL Server

      Если база данных содержит полнотекстовые индексы, то в процессе обновления будет произведен их импорт, сброс или перестроение в зависимости от установленного значения свойства сервера upgrade_option . Если при обновлении выбран режим импорта (upgrade_option = 2) или перестроения (upgrade_option = 0), полнотекстовые индексы во время обновления будут недоступны. В зависимости от объема индексируемых данных процесс импорта может занять несколько часов, а перестроение — в несколько (до десяти) раз больше. Обратите внимание, что если для обновления выбран режим «Импортировать», а полнотекстовый каталог недоступен, то связанные с ним полнотекстовые индексы будут перестроены. Чтобы изменить значение свойства сервера upgrade_option , следует использовать процедуру sp_fulltext_service.

      Уровень совместимости баз данных после обновления

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

      Например, если вы подключаете базу данных, которая была уровнем совместимости 90 перед присоединением к экземпляру SQL Server 2019 (15.x), после обновления уровня совместимости установлено значение 100, что является самым низким поддерживаемым уровнем совместимости в SQL Server 2019 (15.x). Дополнительные сведения см. в разделе Уровень совместимости ALTER DATABASE (Transact-SQL).

      Управление метаданными в экземпляре обновленного сервера

      Чтобы обеспечить согласованное функционирование базы данных для пользователей и приложений, когда она присоединяется к другому экземпляру сервера, на другом экземпляре сервера, возможно, понадобится повторно создать некоторые или все метаданные базы данных, например имена входа, задания и разрешения. Дополнительные сведения см. в статье Управление метаданными при обеспечении доступности базы данных на другом экземпляре сервера (SQL Server).

      Алгоритм шифрования главного ключа службы и главного ключа базы данных изменяется с 3DES на AES

      SQL Server 2012 (11.x) и более поздних версий использует алгоритм шифрования AES для защиты главного ключа службы (SMK) и главного ключа базы данных (DMK). AES - это новый алгоритм шифрования, отличный от алгоритма 3DES, используемого в более ранних версиях. При первом присоединении базы данных к новому экземпляру SQL Server или ее восстановлении копия главного ключа базы данных (зашифрованная главным ключом службы) еще не хранится на сервере. Необходимо расшифровать главный ключ базы данных с помощью инструкции OPEN MASTER KEY . Как только главный ключ базы данных будет расшифрован, появится возможность разрешить автоматическую расшифровку в будущем с помощью инструкции ALTER MASTER KEY REGENERATE , чтобы оставить на сервере копию главного ключа базы данных, зашифрованного с помощью главного ключа службы. После обновления базы данных с переходом от более ранней версии главный ключ базы данных должен быть создан повторно для использования нового алгоритма шифрования AES. Дополнительные сведения о повторном создании главного ключа базы данных см. в статье ALTER MASTER KEY (Transact-SQL). Время, необходимое для повторного создания главного ключа базы данных с обновлением до алгоритма шифрования AES, зависит от числа объектов, защищаемых главным ключом базы данных. Повторное создание главного ключа базы данных с обновлением до алгоритма шифрования AES необходимо произвести только один раз. Это никак не повлияет на последующие операции повторного создания, выполняемые в соответствии со стратегией смены ключей.

      Обратная связь

      Были ли сведения на этой странице полезными?

      Обновление SQL Server до последней версии

      В этом руководстве вы узнаете, как обновить пользовательские базы данных с предыдущих версий SQL Server до SQL Server 2022 (16.x) с помощью Помощник по миграции данных (DMA).

      Другие рекомендации по миграции см. в статье по переходу на базы данных Azure.

      Необходимые компоненты

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

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

      • MAP набор средств.
      • Помощник по миграции данных 5.3 или более поздней версии.
      • Помощник по экспериментам с базами данных.

      Подготовка к миграции

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

      Рекомендуемые

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

      Для проведения инвентаризации с помощью набора средств MAP выполните следующие действия.

      Этап обнаружения

      1. Загрузите и установите набор средств MAP.
      2. Запустите набор средств MAP.
        1. Откройте набор средств MAP, а затем на левой панели выберите База данных. Вы перейдете на следующий экран: Screenshot of MAP Overview.
        2. Выберите элемент Create/Select database (Создать или выбрать базу данных). Screenshot of MAP Create/Select DB.
        3. Убедитесь, что выбран вариант Создать базу данных инвентаризации, введите имя базы данных и краткое описание и нажмите кнопку ОК. Screenshot of MAP Create/Select DB Overview.Следующим шагом является получение данных из созданной базы данных.
        4. Выберите Сбор данных инвентаризации. Screenshot of MAP Collect Inventory Data.
        5. В мастере инвентаризации и оценки выберите SQL Server и SQL Server со сведениями о базе данных, а затем нажмите кнопку Далее. Screenshot of MAP Inventory and Assessment Wizard.
        6. Выберите лучший метод для поиска компьютеров, на которых размещены продукты Майкрософт, а затем нажмите кнопку Далее. Screenshot of MAP Inventory and Assessment Wizard Discovery Methods.
        7. Введите учетные данные или создайте их для нужных систем, а затем щелкните Далее. Screenshot of MAP Inventory and Assessment Wizard Discovery Credentials.
        8. Укажите очередность учетных данных и нажмите кнопку Next. Screenshot of MAP Inventory and Assessment Wizard Discovery Credentials Order. Теперь необходимо указать учетные данные для каждого компьютера, который требуется обнаружить. Можно использовать уникальные учетные данные для каждого компьютера или список учетных данных для всех компьютеров.
        9. После настройки учетных данных выберите Сохранить, а затем нажмите кнопку Далее. Screenshot of MAP Inventory and Assessment Wizard Discovery All Computer Credentials.
        10. Проверьте выбранные настройки и нажмите кнопку Finish (Готово). Screenshot of MAP Inventory and Assessment Wizard Summary.
        11. Подождите несколько минут (в зависимости от количества баз данных) для сводного отчета по сбору данных. Screenshot of MAP Inventory and Assessment Wizard Summary Report.
        12. Выберите Закрыть. Появится главное окно средства, в котором отображается сводка по обнаружению баз данных, выполненному на данный момент.
        13. Создание отчетов и сбор данных.

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

      Screenshot of MAP Report Generation.

      Screenshot of MAP Report Generation Status.

      1. Для создания отчета выберите по очереди оба параметра.

      Оценка и преобразование

      После идентификации источников данных следующим шагом является оценка локальных экземпляров SQL Server. Перед обновлением экземпляра SQL Server используйте Помощник по миграции данных (DMA) для оценки базы данных – источника.

      Чтобы создать оценку с помощью DMA, выполните следующие действия.

      1. Загрузите и установите средство DMA.
      2. Создайте проект Новая оценка.
        1. Щелкните значок создания (+), выберите тип проекта Оценка, укажите имя проекта, выберите SQL Server в качестве источника и целевого объекта, а затем щелкните Создать. Screenshot of New Assessment.
        2. Выберите целевую версию SQL Server, в которую планируется перенести и в которую необходимо выполнить оценку, выберите один или оба типа отчета об оценке (рекомендации по проблемам совместимости и новым функциям), а затем нажмите кнопку "Далее". Screenshot of Report Types.
        3. В поле Подключение к серверу укажите имя экземпляра SQL Server для подключения, тип проверки подлинности и свойства соединения, а затем выберите Подключить.
        4. На панели Добавление источников выберите базы данных, которые необходимо оценить, а затем нажмите кнопку Добавить. Screenshot of Add databases.
        5. Щелкните Запустить оценку. Дождитесь результатов оценки. Длительность оценки зависит от количества добавленных баз данных и размера схемы каждой базы данных. Результаты будут отображаться для каждой базы данных, как только они станут доступны.
        6. Выберите базу данных, для которой выполнена оценка, а затем переключайтесь между разделами Проблемы совместимости и Рекомендации по функциям с помощью переключателя. Screenshot of Assessment results.
        7. Просмотрите проблемы совместимости, анализируя затронутый объект и сведения о каждой проблеме в разделах Критические изменения, Изменение в поведении и Нерекомендуемые функции.
        8. Ознакомьтесь с рекомендациями по производительности, хранилищу и безопасности. Рекомендации по возможностям охватывают различные компоненты, например выполняющаяся в памяти OLTP и Columnstore, Always Encrypted (AE), динамическое маскирование данных (DDM) и прозрачное шифрование данных (TDE).
      3. Просмотрите результаты оценки.
        1. После завершения всех оценок базы данных щелкните Экспортировать отчет, чтобы экспортировать результаты в файл JSON или CSV для анализа данных в удобном для вас виде.

      Дополнительное A/B-тестирование

      Этот шаг считается необязательным и не требуется для завершения миграции. Чтобы использовать DEA для тестирования миграции базы данных, выполните следующие действия.

      1. Загрузите и установите инструмент DEA.
      2. Запуск записи трассировки
        1. В левом дереве навигации щелкните значок камеры, чтобы перейти к разделу Все записи. Screenshot of New trace capture.
        2. Чтобы начать новую запись, выберите Создать запись.
        3. Чтобы настроить запись, укажите имя трассировки, длительность, имя экземпляра SQL Server, имя базы данных и общую папку для хранения файла трассировки на компьютере, на котором работает SQL Server. Screenshot of Provide trace capture inputs.
        4. Выберите Запуск, чтобы начать запись трассировки.
      3. Запуск воспроизведения трассировки
        1. В левом дереве навигации щелкните значок воспроизведения, чтобы перейти к разделу Все воспроизведения. Screenshot of New trace replay.
        2. Чтобы начать новое воспроизведение, выберите Новое воспроизведение.
        3. Чтобы настроить воспроизведение, укажите имя воспроизведения, имя компьютера контроллера, путь к исходному файлу трассировки на контроллере, имя экземпляра SQL Server и путь для хранения целевого файла трассировки на компьютере, на котором работает SQL Server.
        4. Нажмите кнопку Запуск, чтобы начать воспроизведение записи.
      4. Создание нового аналитического отчета
        1. В левом дереве навигации щелкните значок контрольного списка, чтобы перейти к разделу Аналитические отчеты. Screenshot of New Analysis Report.
        2. Подключитесь к SQL Server, на котором будут храниться базы данных отчетов. Вы увидите список всех отчетов на сервере.
        3. Нажмите Новый отчет.
        4. Чтобы настроить отчет, укажите имя отчета и пути к трассировкам для исходного и целевого экземпляров SQL Server. Screenshot of Provide report analysis inputs.
      5. Просмотр аналитического отчета
        1. На первой странице отчета отображаются сведения о версии и сборке для целевых серверов, на которых был выполнен эксперимент. Пороговое значение позволяет настроить чувствительность или допуски для анализа тестов A/B.

          Примечание. По умолчанию пороговое значение равно 5%; любое улучшение производительности, превышающее или равное 5%, классифицируется как "Улучшено". Селектор раскрывающегося списка позволяет оценить отчет с помощью различных пороговых значений производительности.

        2. Выберите отдельные срезы круговой диаграммы, чтобы просмотреть подробные показатели производительности. Screenshot of Drill down report. На странице сведений для категории изменения производительности вы увидите список запросов в этой категории. Screenshot of Drill down report queries.
        3. Выберите отдельный запрос для получения сводных статистических сведений о производительности, ошибках и плане запроса. Screenshot of Summary Statistics.

      Convert

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

      Обзор миграции

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

      Изучите проблемы совместимости, обнаруженные с помощью средства DMA.

      Сохраняйте журналы резервного копирования, планы обслуживания и другие автоматизированные задачи, включая задания, путем создания резервной копии системной базы данных msdb.

      Просмотрите связанные серверы с помощью SQL Server Management Studio. В обозревателе объектов щелкните правой кнопкой мыши объекты сервера, чтобы развернуть список.

      Дополнительные рекомендации могут потребоваться на основе сложности данных и среды.

      • Устранение неполадок потерянных пользователей (SQL Server)
      • Перенос триггеров
      • Мастер формирования и публикации скриптов
      • Зеркальные наборы носителей резервных копий (SQL Server)
      • Обзор резервного копирования (SQL Server)
      • Выпуски и поддерживаемые функции SQL Server 2022

      Миграция схемы и данных

      Следующий шаг после оценки баз данных — начать миграцию схемы и базы данных с помощью DMA.

      Миграция схемы и синхронизация данных

      Чтобы использовать DMA для создания проекта миграции, выполните следующие действия.

      1. Создайте проект Новая миграция.
        1. Щелкните значок создания, выберите тип проекта Миграция, выберите SQL Server в качестве исходных и целевых типов, а затем нажмите кнопку Создать. Screenshot of New Migration.
        2. Укажите сведения о исходном и целевом подключении SQL Server, а затем нажмите кнопку "Далее". Screenshot of Source & Target details.
        3. Выберите базы данных из источника, которые необходимо перенести, а затем укажите Общее расположение, доступное для исходного и целевого SQL Server для операции резервного копирования.

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

        Screenshot of Select databases to migrate.

      2. Нажмите кнопку Далее, выберите имена входа, которые требуется перенести, а затем нажмите кнопку Начать миграцию. Screenshot of Migration Logins.
      3. Теперь отслеживайте ход выполнения миграции на экране Просмотр результатов.
    • Просмотр результатов миграции
      1. Выберите Экспортировать отчет, чтобы сохранить результаты миграции в CSV- или JSON-файл.
      2. Изучите сохраненный файл, чтобы просмотреть сведения о миграции данных и имен входа, и проверьте успешность выполнения процесса.
    • Синхронизация данных и прямая миграция

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

      Поддержка миграции с минимальным временем простоя пока недоступна для этого сценария, поэтому планы синхронизации и перехода в настоящее время не применяются.

      После миграции

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

      Дополнительную информацию об этих проблемах и мерах по их устранению см. в Руководстве по проверке и оптимизации после миграции.

      Проверка приложений

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

      Связанный контент

      • Службы и средства для миграции данных
      • Руководство миграции базы данных Azure
      • Обзор процесса миграции

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

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