Changing the MDB Hostname for Unicenter Desktop and Server Management (DSM) r11 In the event that the Ingres or SQL Server hostname for the MDB changes, there are several changes you will need to make to both the MDB and to the products that use that MDB. This document focuses on the changes required for Unicenter Desktop and Server Management. Information on MDB specific changes are provided in a separate document. Once the MDB has been renamed, you will need to perform the following steps for Unicenter Desktop and Server Management: Update dbmsServer parameter in comstore on Domain Manager Update ca_n_tier table on the Database Server Note: If the MDB will also be changed from a local DB server to a remote DB server (or the reverse), refer to “Database Mobility” later in this document for a list of steps that will need to be taken first. Domain Manager In order for the Domain Manager to point to the new MDB hostname, the itrm/database/default/dbmsServer parameter in comStore must be updated. You can use the ccnfcmda command to do that: Ccnfcmda –cmd SetParameterValue –ps itrm/database/default –pn dbmsServer –v <New Hostname> This step must be done regardless of whether the DBMS being used to store the MDB is Ingres or MS-SQL Server. Database Server On the database server you will need to update the following columns in the ca_n_tier table in the MDB in order to reflect the MDB hostname change: db_host_name db_server db_server contains the fully qualified domain name of the MDB host. On the other hand, db_host_name contains the hostname only. ca_n_tier can be updated with the following SQL statement: update ca_n_tier set db_host_name='<New Hostname>', db_server='<New Hostname.Domain Name>', db_type='SQLServer', db_instance='' where domain_uuid in (select set_val_uuid from ca_settings where set_id=1) Database Mobility If the MDB will be changing from a local to a remote MDB (or vice versa), you will need to perform the following additional steps first: 1. Stop CAF on Domain Manager/MDB machine 2. Backup the MDB on the Domain Manager 3. Create the MDB DB 4. Restore the source MDB on the remote node Suggested procedures are provided for both SQL and Ingres-based MDBs. Database Mobility – SQL Server If the MDB is MS-SQL based, one way to backup and restore the source MDB is to first execute the following SQL statement: USE MASTER EXEC SP_DROPDEVICE 'MDB_BKP1' EXEC SP_ADDUMPDEVICE 'DISK', 'MDB_BKP1', 'C:\PROGRAM FILES\MICROSOFT SQL SERVER\MSSQL\BACKUP\MDB_BKP1.BAK' USE MDB BACKUP DATABASE MDB TO MDB_BKP1 Next, move the MDB_BKP1.BAK to the target SQL Server machine. Before restoring the MDB, you will have to first create an MDB DB. This can be accomplished through the SQL Server Enterprise Manager. Important! The newly created MDB must be configured as case insensitive, accent sensitive (i.e., _CI_AS). Once the MDB DB has been created, you can then restore the source MDB through the following the following SQL statement: USE MASTER EXEC SP_DROPDEVICE 'MDB_BKP1' EXEC SP_ADDUMPDEVICE 'DISK', 'MDB_BKP1', 'C:\PROGRAM FILES\MICROSOFT SQL SERVER\MSSQL\BACKUP\MDB_BKP1.BAK' RESTORE DATABASE MDB FROM MDB_BKP1 Important! The RESTORE statement always produces a database that is identical to the one that was backed up. Since backup file contains information on the name, number, size, and location of all files for the database at the time the backup was created if your location is different from the default one (i.e., X:\PROGRAM FILES\MICROSOFT SQL SERVER\MSSQL\DATA) you will have to use the WITH MOVE clause. For example: RESTORE DATABASE MDB FROM MDB_BKP1 WITH MOVE 'mdb' TO 'D:\MSSQL\DATA\MDB.MDF', MOVE 'mdb_log' TO 'D:\MSSQL\DATA\MDB_LOG.LDF' Another option is to detach/attach the MDB instead. To do that first detach the MDB on the source SQL Server by doing the following: 1. Launch the SQL Server Enterprise Manager 2. Right-click the MDB database, and select All Tasks. 3. Select Detach Database… The Detach Database – MDB dialog box should appear. If there are no connections using the MDB (i.e., “Connections using this database: 0” ) the STATUS will be “The database is ready to be detached”. 4. Click OK and wait for the MDB to be detached. Next, copy the corresponding .MDF and .LDF files from the source SQL Server to the appropriate directory on the target one. Finally, attach the MDB on the target SQL Server. To do this: 1. Launch SQL Enterprise Manager 2. Right-click Databases, select All Tasks 3. Select Attach Database… The Attach Database – (LOCAL) dialog box should appear. 4. Browse for the .MDF file. If the .LDF file is located in the same directory, it will be added automatically. Otherwise, you will have to browse for it as well. Do not change the database (i.e., “Attach as” ) and the database owner (i.e. ,”Specify database owner”) values. 5. Click OK and wait for the following message box: 6. After restoring the MDB verify that the DB user ca_itrm exists and is a member of the ca_itrm_group role. The same applies to the user ca_itrm_ams. Database Mobility – Ingres One way to backup and restore the source MDB is to first execute the following from a command prompt: copydb –umdbadmin mdb -c This command will create two SQL scripts: copy.in and copy.out. By default, these scripts are created in the current directory (i.e., C:\MDBBACKUP). So, prior to executing the copydb command verify that that disk/directory has enough room to store a copy of the MDB. You will have to use the SQL utility in order to copy the MDB DB out and then restore it on the target Ingres Server. On the source Ingres Server, copy data out using copy.out: sql –umdbadmin mdb < copy.out Next, move all files to the target Ingres Server. The directory structure from the source Ingres Server must be replicated on the target one. For example, if the files generated on the source Ingres Server are stored in the C:\MDBBACKUP folder, they will have to be stored in the same folder on the target Ingres Server (i.e., C:\MDBBACKUP). Create a DB called “MDB” by running the executing the following from a Command Prompt window: createdb –umdbadmin –n mdb Then, use the SQL utility, in conjunction with the copy.in script file, to populate the newly created MDB: sql –umdbadmin mdb < copy.in Finally, verify that the ca_itrm and ca_itrm_ams OS user IDs are created on the target Ingres Server.