Deploying VMware Identity Manager 2.6 and 2.7 on SQL 2014 with a Database name other then “saas” fails with error message: ??NULL??
So where does this go wrong?
When you change the sql query below, let say database name “saas_test” the SQL query will run just fine. During IDM deployment you point to the SQL server and it start populating the database but after 3 tables it stops and fails with the error: ??NULL??
The message will take a while to appear and you see 5 retries to restart the IDM service.
When you use the default database name “saas” everything works just fine..
Is this a bugger in the installation of IDM? This happens in both 2.6 and 2.7 versions.
I submitted this to VMware so let’s see why this fails. To me it smells like a hardcoded name in the install script that requires database name to be “saas” and nothing else.
Update:
After some contact with vIDM specialists, the only supported database name is “saas” when deploying Identity Manager on SQL.
The SQL part of IDM is not really a shocker. This can be done with the script below:
Login into SQL Server Management Studio and click “New Query” on the tool bar, then cut-n-paste the following sql commands into the right side window:
USE master; IF EXISTS(select * from sys.databases where name=N'saas') BEGIN alter database saas set single_user with rollback immediate; DROP DATABASE saas; END GO
CREATE DATABASE saas COLLATE Latin1_General_CS_AS; ALTER DATABASE saas SET READ_COMMITTED_SNAPSHOT ON; GO
IF NOT EXISTS (SELECT name FROM master.sys.server_principals WHERE name = N'horizon') BEGIN CREATE LOGIN horizon WITH PASSWORD = N'H0rizon!'; END GO
USE saas; IF EXISTS (SELECT * FROM sys.database_principals WHERE name = N'horizon') DROP USER [horizon] GO
CREATE USER horizon FOR LOGIN horizon WITH DEFAULT_SCHEMA = saas; GO
CREATE SCHEMA saas AUTHORIZATION horizon GRANT ALL ON DATABASE::saas TO horizon; GO
click “!Execute” on the tool bar, the DB server is now ready to be connected to Workspace db, The JDBC URL to be used: jdbc:sqlserver://<DB_VM_IP_ADDR>;DatabaseName=saas.
Username is horizon and PW: H0rizon!
SQL 2014 Always On Cluster
When you are using a SQL 2014 Always On Cluster, During the deployment of VMware Identity Manager connect to Database using the following settings:
“jdbc:sqlserver://SQLAGListener;DatabaseName=saas”
SQLAGListener = the SQL Availability Group Listener, in the example below that is SQLProdServer
If the secondary SQL server is on a different subnet add the following to the jdbc “stringmultiSubnetFailover=true”
“jdbc:sqlserver://SQLAGListener;DatabaseName=saas; multiSubnetFailover=true”
Hi,
Many thanks for your post I was going crazy with this external DB.
Cheers