AXForum  
Вернуться   AXForum > Microsoft Dynamics CRM > Dynamics CRM: Blogs
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 13.02.2015, 12:00   #1  
Blog bot is offline
Blog bot
Участник
 
25,491 / 846 (79) +++++++
Регистрация: 28.10.2006
In this coffee break we will show a way to deploy Microsoft Dynamics NAV automatically. We assume that Microsoft Dynamics NAV is already installed on the machine, but we want to add additional installations / instances of Microsoft Dynamics NAV.


Coffee Break 2: Automate a Microsoft Dynamics NAV deployment
User Story:
The customer has a system where they spin up a new Microsoft Dynamics NAV system every time they
- Start a new branch
- Start a new series of testing
- Start a new Fiscal Year
- etc
In practical terms, a "new Microsoft Dynamics NAV system" could mean new Microsoft Dynamics NAV Server instance and database, a new company, or a new tenant. Typically you would end by starting a new Microsoft Dynamics NAV Server service or spinning up a new tenant. For simplicity in this example we just re-use an existing Microsoft Dynamics NAV Server service to start up on our new database.

Pre requisites:
We use a SQL Server PowerShell cmdlet: import-module sqlps. SQLPS module is provided with SQL Server installation, but you don't have to install SQL Server to obtain the module.

If you don't have SQL Server installed on the box you're running PS on, you can install Microsoft SQL Server 2012Feature Pack:

http://www.microsoft.com/en-us/downl....aspx?id=29065

#Preparation
$MyNAVServerName = "DynamicsNAV80"
$MySQLServerName = "."
$MyNewCustomerName = "NewCustomer"
$MyNewDatabaseName = "NewCustomerDatabase"

Set-ExecutionPolicy unrestricted
import-module "C:Program FilesMicrosoft Dynamics NAV80ServiceNavAdminTool.ps1"
Push-Location #jump back to standard prompt with pop-location
import-module sqlps #ignore any warnings you may get

#Restore SQL db (NAV demo db)
#Relocate database files http://stackoverflow.com/questions/2...atabase-cmdlet
$mdf = New-Object Microsoft.SqlServer.Management.Smo.RelocateFile("Demo Database NAV (8-0)_Data", "C:Program FilesMicrosoft SQL ServerMSSQL12.MSSQLSERVERMSSQLDATADB_Data_$MyNewCustomerName.mdf")
$ldf = New-Object Microsoft.SqlServer.Management.Smo.RelocateFile("Demo Database NAV (8-0)_Log", "C:Program FilesMicrosoft SQL ServerMSSQL12.MSSQLSERVERMSSQLDATADB_Log_$MyNewCustomerName.ldf")

restore-SqlDatabase -ServerInstance $MySQLServerName `
-Database $MyNewDatabaseName `
-BackupFile "C:NAVDVDSQLDemoDatabaseCommonAppDataMicrosoftMicrosoft Dynamics NAV80DatabaseDemo Database NAV (8-0).bak" `
-ReplaceDatabase `
-RelocateFile @($mdf,$ldf)


#Set network service as dbo
$CreateServiceAccountUser = "CREATE USER [NT AUTHORITYNETWORK SERVICE] FOR LOGIN [NT AUTHORITYNETWORK SERVICE]"
Invoke-Sqlcmd -ServerInstance $MySQLServerName -Database $MyNewDatabaseName -Query $CreateServiceAccountUser
$AddServiceAccountAsDbo = "exec sp_addrolemember 'db_owner', 'NT AUTHORITYNETWORK SERVICE'"
Invoke-Sqlcmd -ServerInstance $MySQLServerName -Database $MyNewDatabaseName -Query $AddServiceAccountAsDbo

pop-location # Finished with SQL commands so popping back to normal PS prompt

#For NAV 2013(R2), to convert the database to latest executable version.
#For NAV 2015 we don't need this (in fact we don't have the Invoke-DatabaseConversion cmdlet).
import-module "C:PSscriptsUpgradeCmdletsNAVUpgradeCmdlets.psm1"
Invoke-NAVDatabaseConversion -DatabaseServer localhost -DatabaseName "Demo Database NAV (7-1)" -FinSqlExeFile "C:Program FilesMicrosoft Dynamics NAV71Servicefinsql.exe"

#At this point the next steps depend on whether we want a new NAV Service, connect to an existing one, etc. Here we just reuse existing NAV Service
#Configure then restart the service and get status
Set-NAVServerConfiguration $MyNAVServerName -KeyName DatabaseName -KeyValue $MyNewDatabaseName
Set-NAVServerInstance $MyNAVServerName -restart
Get-NAVServerInstance $MyNAVServerName





Jasminka Thunes, Escalation Engineer Dynamics NAV EMEA

Lars Lohndorf-Larsen, Escalation Engineer Dynamics NAV EMEA

[img]//feeds.feedburner.com/~r/MicrosoftDynamicsNavTeamBlog/~4/AQk7byc83is[/img]

Источник: http://feedproxy.google.com/~r/Micro...owershell.aspx
__________________
Расскажите о новых и интересных блогах по Microsoft Dynamics, напишите личное сообщение администратору.
 


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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 21:13.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.