Fail on setting up database for BSM

Hello Experts,

I am building a new BSM environment.

After finishing installing BSM gateway and DPS, I run "Setup and Database Configuration Utility" on DPS.

 

The database account I am going to use for BSM is called BSM_USER.  It has privilige of creating database which I have verified by login to the database using this account and create an database.

 

But "Setup and Database Configuration Utility"  gave me below error :

 

 

 

 

In the log, I can find below error:

 

2015-05-08 16:52:20,950 [pool-2-thread-3] (Step.java:119) INFO  - *** Step sql_credentials was executed. Execution result : success. Next step is: createOrconnect_sql_db
2015-05-08 16:52:20,950 [pool-2-thread-3] (Step.java:89) INFO  - *** Executing step: createOrconnect_sql_db
2015-05-08 16:52:20,950 [pool-2-thread-3] (NavigationRules.java:66) INFO  - navigationValue = create
2015-05-08 16:52:20,950 [pool-2-thread-3] (Step.java:119) INFO  - *** Step createOrconnect_sql_db was executed. Execution result : success. Next step is: create_sql_db
2015-05-08 16:52:20,950 [pool-2-thread-3] (Step.java:89) INFO  - *** Executing step: create_sql_db
2015-05-08 16:52:20,950 [pool-2-thread-3] (NavigationRules.java:66) INFO  - navigationValue = management
2015-05-08 16:52:20,950 [pool-2-thread-3] (Step.java:119) INFO  - *** Step create_sql_db was executed. Execution result : success. Next step is: create_sql_bac_mng_db
2015-05-08 16:52:20,950 [pool-2-thread-3] (Step.java:89) INFO  - *** Executing step: create_sql_bac_mng_db
2015-05-08 16:52:20,950 [pool-2-thread-3] (JavaTask.java:76) INFO  - Start java task: com.mercury.topaz.setmanagementdb.dbimplementation.ManagementSchemaTask
2015-05-08 16:52:39,562 [pool-2-thread-3] (Step.java:96) ERROR - Task execution failed
com.mercury.infra.flowmngr.exceptions.TaskExecutionException: com.mercury.infra.db.exceptions.DBException: Failed creating MS-SQL database 'BSM_Management'
    at com.mercury.infra.flowmngr.model.JavaTask.execute(JavaTask.java:91)
    at com.mercury.infra.flowmngr.model.Step.executeStep(Step.java:94)
    at com.mercury.infra.flowmngr.FlowManager.run(FlowManager.java:212)
    at com.mercury.infra.wizard.WizardController$FlowManagerRunner.doInBackground(WizardController.java:85)
    at com.hp.acm.swing.executor.SwingJob$SwingJobWorker.doInBackground(SwingJob.java:319)
    at javax.swing.SwingWorker$1.call(SwingWorker.java:296)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at javax.swing.SwingWorker.run(SwingWorker.java:335)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
Caused by: com.mercury.infra.db.exceptions.DBException: Failed creating MS-SQL database 'BSM_Management'
    at com.mercury.topaz.dbverify.creator.SchemaBuilderImpl.createMsSqlDatabase(SchemaBuilderImpl.java:337)
    at com.mercury.topaz.dbverify.creator.SchemaBuilderImpl.createSchema(SchemaBuilderImpl.java:100)
    at com.mercury.topaz.dbverify.creator.SchemaBuilderImpl.createSchema(SchemaBuilderImpl.java:80)
    at com.mercury.topaz.dbverify.creator.GenericSchemaBuilder.createSchema(GenericSchemaBuilder.java:103)
    at com.mercury.topaz.setmanagementdb.dbimplementation.ManagementSchemaTask.execute(ManagementSchemaTask.java:53)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at com.mercury.infra.flowmngr.model.JavaTask.execute(JavaTask.java:86)
    ... 10 more
2015-05-08 16:52:39,562 [pool-2-thread-3] (NavigationRules.java:66) INFO  - navigationValue = failure

 

 

I tried another method by asking the DBA to create an empty database, for example,  "BSM_Management_old", and the account I login to database server "BSM_USER" is the database owner of this database, this time, I got below error:

 

 

and In the log, I find below error:

 

2015-05-10 14:56:53,432 [pool-2-thread-5] (JavaTask.java:76) INFO  - Start java task: com.mercury.infra.configserver.fm.tasks.CheckDbConnectionTask
2015-05-10 14:56:53,463 [pool-2-thread-5] (JavaTask.java:87) INFO  - Finished java task: com.mercury.infra.configserver.fm.tasks.CheckDbConnectionTask. Execution result: success
2015-05-10 14:56:53,463 [pool-2-thread-5] (JavaTask.java:76) INFO  - Start java task: com.mercury.infra.configserver.fm.tasks.BasicSchemaValidatorTask
2015-05-10 14:56:53,494 [pool-2-thread-5] (Step.java:96) ERROR - Task execution failed
com.mercury.infra.flowmngr.exceptions.TaskExecutionException: com.mercury.infra.configserver.exception.InvalidSchemaException: Failed to check if table USERS exists in database dbType=(SQL Server); hostName=MYAUVWV01202159; dbName=BSM_Management_old; userName=BSM_USER; server=MYAUVWV01202159; sid=; port=1433
    at com.mercury.infra.flowmngr.model.JavaTask.execute(JavaTask.java:91)
    at com.mercury.infra.flowmngr.model.Step.executeStep(Step.java:94)
    at com.mercury.infra.flowmngr.FlowManager.run(FlowManager.java:212)
    at com.mercury.infra.wizard.WizardController$FlowManagerRunner.doInBackground(WizardController.java:85)
    at com.hp.acm.swing.executor.SwingJob$SwingJobWorker.doInBackground(SwingJob.java:319)
    at javax.swing.SwingWorker$1.call(SwingWorker.java:296)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at javax.swing.SwingWorker.run(SwingWorker.java:335)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
Caused by: com.mercury.infra.configserver.exception.InvalidSchemaException: Failed to check if table USERS exists in database dbType=(SQL Server); hostName=MYAUVWV01202159; dbName=BSM_Management_old; userName=BSM_USER; server=MYAUVWV01202159; sid=; port=1433
    at com.mercury.infra.configserver.fm.tasks.BasicSchemaValidatorTask.validate(BasicSchemaValidatorTask.java:85)
    at com.mercury.infra.configserver.fm.tasks.BasicSchemaValidatorTask.execute(BasicSchemaValidatorTask.java:45)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at com.mercury.infra.flowmngr.model.JavaTask.execute(JavaTask.java:86)
    ... 10 more
Caused by: java.sql.SQLSyntaxErrorException: [mercury][SQLServer JDBC Driver][SQLServer]Invalid object name 'USERS'.
    at com.mercury.jdbc.sqlserverbase.ddcw.b(Unknown Source)
    at com.mercury.jdbc.sqlserverbase.ddcw.a(Unknown Source)
    at com.mercury.jdbc.sqlserverbase.ddcv.b(Unknown Source)
    at com.mercury.jdbc.sqlserverbase.ddcv.a(Unknown Source)
    at com.mercury.jdbc.sqlserver.tds.ddr.v(Unknown Source)
    at com.mercury.jdbc.sqlserver.tds.ddr.a(Unknown Source)
    at com.mercury.jdbc.sqlserver.tds.ddr.a(Unknown Source)
    at com.mercury.jdbc.sqlserver.dda3.m(Unknown Source)
    at com.mercury.jdbc.sqlserverbase.dde7.e(Unknown Source)
    at com.mercury.jdbc.sqlserverbase.dde7.a(Unknown Source)
    at com.mercury.jdbc.sqlserverbase.dde7.v(Unknown Source)
    at com.mercury.jdbc.sqlserverbase.dde7.u(Unknown Source)
    at com.mercury.jdbc.sqlserverbase.dde7.executeQuery(Unknown Source)
    at com.mercury.infra.configserver.fm.tasks.BasicSchemaValidatorTask.validate(BasicSchemaValidatorTask.java:72)
    ... 16 more
2015-05-10 14:56:53,494 [pool-2-thread-5] (NavigationRules.java:66) INFO  - navigationValue = failure
2015-05-10 14:56:53,494 [pool-2-thread-5] (Step.java:119) INFO  - *** Step connect_sql_bac_mng_db was executed. Execution result : failure. Next step is: sql_credentials

 

 

 

Do you have idea what's wrong ?

 

 

 

 

 

 

Parents Reply Children
  • Hi Mark,

     

    I cannot say a lot about the first error, if this is all you find in the logs

     

    2015-05-08 16:52:39,562 [pool-2-thread-3] (Step.java:96) ERROR - Task execution failed
    com.mercury.infra.flowmngr.exceptions.TaskExecutio​nException: com.mercury.infra.db.exceptions.DBException: Failed creating MS-SQL database 'BSM_Management'
    ...

    Caused by: com.mercury.infra.db.exceptions.DBException: Failed creating MS-SQL database 'BSM_Management'

     

    here you might need to check the MsSQL server logs for more details (in case it is a DB issue like missing credentials)

    The second error however is somewhat easy to explain:
     

    Caused by: com.mercury.infra.configserver.exception.InvalidSc​hemaException: Failed to check if table USERS exists in database dbType=(SQL Server); hostName=MYAUVWV01202159; dbName=BSM_Management_old; userName=BSM_USER; server=MYAUVWV01202159; sid=; port=1433


    When you connect to an existing database, BSM verified that the Management table contains some of the structures, for example the USERS table, just to make sure that you don't ry to connect BSM to the profile database (for example).

    If you manually created the Management Database, did you follow the steps as outline in the Database Guide,
     Chapter 3: Manually Creating the Microsoft SQL Server Database,
      Creating the Management Objects


    I assume that the script which will create all objects for the management database (inlcuding the table USERS) and the next script adding data to some of the tables has not been executed properly.

     

    Greetings

    Siggi