publishing database changes sql server using microsoft tfs
Цей підручник пояснює, як детально створити проект бази даних SQL Server у TFS та надати спільний доступ до проекту до сховища Microsoft TFS:
У підручниках із серії DevOps, опублікованих @ Підручник з DevOps , ми вивчали питання безперервної інтеграції та автоматизації безперервної доставки для Java та .Net для локального та хмарного розгортання програм.
Серед розглянутих нами інструментів є Microsoft VSTS з Azure, Amazon Web Services та Ansible. Серія була зосереджена на змінах вихідного коду та на тому, наскільки ефективно його швидко розгорнули в різних середовищах. Але коли ми говоримо про будь-яку 3-рівневу розробку додатків, також буде задіяна база даних, і нам доведеться застосовувати ті самі методи до змін, пов’язаних з базою даних.
Що ви дізнаєтесь:
Microsoft Team Foundation Server 2015 та SQL Server 2014
Ця стаття буде зосереджена на таких сферах, як використання Visual Studio 2015 для розробки, створення проекту бази даних SQL Server, що містить визначення бази даних, створення визначення збірки для публікації змін у SQL Server тощо за допомогою Microsoft Team Foundation Server 2015 та SQL Server 2014.
Тож врешті-решт нам також потрібно ефективно керувати сценаріями баз даних та їх змінами.
Створення проекту бази даних SQL Server в TFS
Почнемо зі створення проекту бази даних у Visual Studio. Запустіть Visual Studio 2015 і створіть проект бази даних, як показано на малюнку нижче, використовуючи Файл-> Новий -> Проект . Введіть ім'я та натисніть OK.
Додайте нову папку та назвіть її Таблицями. Ця папка буде містити всі наші файли SQL. Клацніть правою кнопкою миші на Проект і виберіть Додати-> Нова папка.
Створена папка відображається у Провіднику рішень. Додайте сюди нову таблицю та визначте стовпчики відповідно.
Клацніть правою кнопкою миші на папці Таблиці та виберіть Додаток-> Таблиця як показано на зображенні нижче.
Введіть Ім'я як Співробітник з вибраним параметром Таблиця. Натисніть на Додати.
Додайте кілька стовпців, як показано на поданні Дизайн.
Якщо у вас є наявні файли SQL, їх також можна імпортувати, клацнувши правою кнопкою миші на проекті бази даних та вибравши Імпортувати сценарій (* .SQL)
Так само, Додати -> Збережена процедура в папку, як показано нижче.
Остаточна структура, як показано в проекті бази даних, буде виглядати як зображення нижче.
Отже, як правило, для кожного випуску та як розробник ми вносимо зміни до таблиць або збережених процедур, а Visual Studio гарантує, що сценарії будуть належним чином змінені для забезпечення синхронізації змін бази даних із сценаріями. Нам потрібно публікувати ці зміни або постійно розгортати їх автоматизовано в базі даних SQL Server.
Для цього опублікуйте файл профілю, який є XML-файлом, і він містить всю інформацію, таку як ім’я бази даних, рядок підключення тощо, необхідне для розгортання на SQL Server.
Після того, як файл XML стане доступним, ми будемо використовувати визначення збірки Microsoft TFS для автоматичної публікації змін у базі даних SQL Server або на основі кожної реєстрації, або за розкладом.
Під час інсталяції SQL Server ми створили порожній файл база даних, наприклад, Співробітник, якого ми використовуватимемо для публікації.
Тепер створіть файл профілю публікації за допомогою Visual Studio. Клацніть правою кнопкою миші на проект бази даних та виберіть Опублікувати.
Відредагуйте та виберіть підключення до бази даних Employee на SQL Server.
Клацніть на кнопку Зберегти профіль як щоб зберегти профіль у проекті. Ви можете побачити файл із іменем Employee.publish.xml створюється. Ви також можете вручну розгорнути зміни, натиснувши кнопку Опублікувати, але тут ми збираємося автоматизувати зміни, які будуть опубліковані.
Виберіть Скасувати наразі після збереження профілю.
Відкрийте файл у редакторі XML, і ви зможете побачити базу даних та рядки підключення. Додайте ключ вручну для пароля та згадайте пароль для вказаного ідентифікатора користувача. Це потрібно для підключення до бази даних SQL Server.
Оскільки доступ до пароля є легким, ми побачимо, як замаскувати його у визначенні збірки за допомогою плагіна Replace Token.
True Employee Employee.sql Data Source=l-0310;Persist Security Info=False;User ID=sa; Password=;Pooling=False;MultipleActiveResultSets=False;Connect Timeout=60;Encrypt=False;TrustServerCertificate=True 1
Також переконайтеся, що вибрано правильну версію SQL Server, яка буде використовуватися для цього проекту бази даних, інакше опубліковані дані матимуть помилки. Клацніть правою кнопкою миші на проект бази даних (Співробітник) і виберіть Властивості . Виберіть відповідну версію, і в цьому випадку це версія 2014 року. Зберегти (Ctrl + S) зміни, зроблені після внесення змін.
Виберіть SQL Server 2014 як цільову платформу та збережіть рішення.
Щоб використовувати проект у визначенні збірки TFS, нам потрібно надати спільний доступ до проекту зі сховищем TFS. Клацніть правою кнопкою миші на рішення та виберіть Додайте рішення для контролю джерел. Перейдіть до Провідник команд -> Зміни, що очікують на розгляд і Перевірь рішення.
Тепер проект повинен бути доступний у TFS.
Створити визначення збірки для автоматизації публікації
Тепер у нас проект бази даних перевіряється в TFS, і кожна зміна, яку вніс розробник у таблицю або збережені процедури, буде автоматично опублікована на SQL Server без будь-якого втручання вручну за допомогою Build Definition під час кожної реєстрації або за графіком .
Спочатку змініть файл XML публікації, щоб додати маркер ключа пароля, як показано нижче. Реєстрація внесених змін.
True Employee Employee.sql Data Source=l-0310;Persist Security Info=False;User ID=sa;Password=#{DBPWD}#;Pooling=False;MultipleActiveResultSets=False;Connect Timeout=60;Encrypt=False;TrustServerCertificate=True 1
У TFS перейдіть до Build HUB і створіть пусте визначення збірки.
Спочатку у визначенні збірки додайте файл Крок заміни жетонів та налаштуйте, як показано на малюнку нижче, оскільки змінна пароля повинна бути замаскована. Якщо вам потрібно завантажити плагін для Replace Tokens, ви можете завантажити та встановити той самий для Microsoft TFS 2015 з GitHub-замінити маркери
як запустити виконуваний файл jar - -
Перейдіть на вкладку Змінні та додайте змінну, як у файлі XML публікації, тобто DBPWD зі значенням пароля для до ідентифікатор користувача. Клацніть на замок і встановіть прапорець для Дозволити під час черги. Збережіть визначення збірки.
Потім додайте крок збірки Visual Studio. Виберіть Рішення Visual Studio і введіть Аргументи побудови MS як показано на зображенні нижче, щоб створити та опублікувати зміни.
/ t: build / t: публікація /p:SqlPublishProfilePath=Efficiee.publish.xml
Поставте в чергу або запустіть збірку та перевірте зміни, опубліковані в SQL Server. Для процесу побудови потрібен агент для запуску на машині, де встановлено SQL Server.
Рекомендована література про встановлення та налаштування агентів для Microsoft TFS 2015 @ Microsoft-TFS-2015
Відкрийте SQL Server 2014 Management Studio, клацніть правою кнопкою миші на базі даних, запустіть запит у базі даних і знайдіть зміни, які публікуються після запущеної збірки.
Як ми бачимо, вперше таблиці та збережені процедури публікуються за допомогою автоматизованого процесу збірки в TFS. Щоб продемонструвати безперервну інтеграцію та автоматизований процес публікації в базі даних, давайте внесемо зміни в таблицю та повторно запустимо збірку.
У таблицю ми додали ще один стовпець.
Знову поставте в чергу черги збірки та перевірте, чи успішно опубліковані зміни чи ні. Тепер у таблицю додано стовпець Країна. Зверніться до зображення нижче.
Якщо ви хочете переглянути базу даних, таблиці тощо з самого Visual Studio, перейдіть до Перегляд-> Провідник об'єктів SQL Server для перегляду бази даних, яка має ієрархію SQL Server.
Висновок
Ми бачили просте, але потужне рішення для постійної публікації змін бази даних у SQL Server за допомогою Microsoft TFS 2015 під час кожної реєстрації або за графіком побудови. Усі таблиці або збережені процедури або подання додаються або оновлюються на основі цих змін, і Visual Studio відповідно створює або змінює сценарії SQL.
Отже, в двох словах керування великими базами даних та публікація змін стали легкими за допомогою проектів бази даних Visual Studio та Microsoft Team Foundation Server.
Рекомендована література
- Підручник з TFS: TFS для автоматизації побудови, тестування та розгортання проектів .NET
- Як використовувати Microsoft TFS для проектів JAVA з Eclipse у DevOps
- Швидке планування за допомогою Microsoft Team Foundation Server (TFS)
- Розробка додатків для баз даних Oracle: Oracle SQL & PL / SQL
- Підручник з бази даних Oracle - Що таке база даних Oracle?
- MySQL Create Database - Як створити базу даних в MySQL
- MongoDB Створення підручника з бази даних
- Різниця між SQL Vs MySQL Vs SQL Server (з прикладами)