Host-based backup of VMware vSphere VMs.
Post Reply
mallikarjunac
Novice
Posts: 7
Liked: never
Joined: Mar 29, 2022 12:12 pm
Full Name: Mallikarjuna Chennareddy
Contact:

SharedManagementObjects.msi is not exists in Veeam12 iso

Post by mallikarjunac »

Hi Team,

I installed prerequisite packages mentioned below and then installed Veeam11 in unattended mode with external Sql Server successfully.
1) SQLSysClrTypes - located under Redistr\x64\ in Veeam11 iso.
2) sharedManagementObjects - located under Redistr\x64\ in Veeam11 iso.
3) reportviewer - located under Redistr\ in Veeam11 iso.
4) NDP_x64 - located under Redistr\ in Veeam11 iso.

I'm planning to upgrade to Veeam12 now, So I tried above process and noticed that sharedManagementObjects.msi is missing under 'Redistr\x64\' folder, so I skipped it and installed Veeam12 successfully. But, my powershell scripts are failing to connect to Sql Server. Which version of sharedManagementObjects should be installed(compatible with Veeam12 and Sql Server 2017) and why Veeam is not providing sharedManagementObjects in Veeam12 ISO. What is the best way to fix SMO issue.


PS C:\Users\Administrator> [reflection.assembly]::LoadWithPartialName("Microsoft.SqlServer.ConnectionInfo")
PS C:\Users\Administrator> $mySrvConn = new-object Microsoft.SqlServer.Management.Common.ServerConnection
new-object : Cannot find type [Microsoft.SqlServer.Management.Common.ServerConnection]: verify that the assembly
containing this type is loaded.
At line:1 char:14
+ ... mySrvConn = new-object Microsoft.SqlServer.Management.Common.ServerCo ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidType: (:) [New-Object], PSArgumentException
+ FullyQualifiedErrorId : TypeNotFound,Microsoft.PowerShell.Commands.NewObjectCommand

PS C:\Users\Administrator>


Thanks in advance.
Mallikarjuna
david.domask
Veeam Software
Posts: 1349
Liked: 352 times
Joined: Jun 28, 2016 12:12 pm
Contact:

Re: SharedManagementObjects.msi is not exists in Veeam12 iso

Post by david.domask »

Hi @mallikarjunac,

v12 ships with Postgres as the default now, so as far as I remember, the MSSQL redistributables aren't there by default anymore.

So you can install the pre-requisites by providing the MSIs from Microsoft for unattended install, or just update the part of your script that checks the Configuration Database to do the same call to Postgres.

You can set the SQL engine in unattended mode with this flag: VBR_SQLSERVER_ENGINE

https://helpcenter.veeam.com/docs/backu ... ml?ver=120

What are you checking during your installation script with the connection though? It's just to ensure that the service is running before advancing to install the VBR Server? If so, I think you just need to have it check which engine will be used (MSSQL or Postgres) and then do a separate connection type.
David Domask | Product Management: Principal Analyst
mallikarjunac
Novice
Posts: 7
Liked: never
Joined: Mar 29, 2022 12:12 pm
Full Name: Mallikarjuna Chennareddy
Contact:

Re: SharedManagementObjects.msi is not exists in Veeam12 iso

Post by mallikarjunac »

Hi David,

Thanks for your reply. We actually install SQLSysClrTypes and sharedManagementObjects before installing Veeam in unattended mode. Since sharedManagementObjects not present in Veeam12, my automation skipped SMO installation and then installed Veeam12 with VBR_SQLSERVER_ENGINE=1 in unattended mode successfully. I will include SMO installation in my automation.

But the issue is, We have some powershell scripts which uses SMO to connect to SQL Server and do day-to-day activities, these scripts were failing. I installed SMO of SQLServer 2016 and then tried powershell scripts, they are working fine now.

We don't use PowerShell with SMO during Veeam installation.

Could you please let me know which SDK Veeam uses to connect to DBs(SQL Server / Postgress).

Thanks in advance.
Mallikarjuna
david.domask
Veeam Software
Posts: 1349
Liked: 352 times
Joined: Jun 28, 2016 12:12 pm
Contact:

Re: SharedManagementObjects.msi is not exists in Veeam12 iso

Post by david.domask »

Hi @mallikarjunac,

You are welcome.

To answer your next question, I'm not sure it's really relevant. We just use a normal OLEDB connection for MSSQL, but what specifically are you wanting to check in your script? Just that the SQL engine is running? That the DB is up and accessible?

I think instead of chasing that, first clarify what you want to test and we can suggest a better way.
David Domask | Product Management: Principal Analyst
Post Reply

Who is online

Users browsing this forum: Bing [Bot], Google [Bot] and 36 guests