Showing posts with label Database. Show all posts
Showing posts with label Database. Show all posts

Monday, 19 June 2017

Is Hadoop a Database ?

Hadoop is not a database: Hadoop is an distributed file system and not a database. It simply uses the filesystem provided by Linux to store data

Wednesday, 7 September 2016

How to restore a Corrupt SCOM Database in SCOM 2012 R2 Step by Step

How to restore a Corrupt SCOM Database in SCOM 2012 R2

  • Sometimes the SCOM database gets corrupted because of disk issue.
  • Restoring it from Backup is a very lengthy process and time consuming.
  • Opening a ticket with Microsoft might help, but there default reply is to restore from last good backup
  • So how you quickly recovery a corrupt SCOM database?. There is a way.
  • First Stop all SCOM Services on your management server.
  • Then Put the Corrupt SCOM database in SINGLE_USER Mode.
If you Operations Manager DB is corrupted Run the below command,

DBCC CHECKDB ('OperationManager', REPAIR_ALLOW_DATA_LOSS) WITH ALL_ERRORMSGS, NO_INFOMSGS
    If you Operations Manager Datawhare house is corrupted Run the below command,

    DBCC CHECKDB ('OperationsManagerDW', REPAIR_ALLOW_DATA_LOSS) WITH ALL_ERRORMSGS, NO_INFOMSGS

    • Once completed you should be able to bring your database online

    Monday, 18 April 2016

    Step by Step Guide to recovery or Move Operations Manager Database from Old Server to New Server

    Step by Step Guide to Move Operations Manager Database from Old Server to New Server




    • Step1:Stop Operation Manager services
    On all the management servers in the management group, stop the Operations Manager services:
    * System Center Data Access
    * System Center Management
    * System Center Management Configuration

    • Step2: Create Backup of Old OperationManager Database and move it to new Server

    * On the original operational database server, use Microsoft SQL Server Management Studio to create a full backup of the operational database. The DB name is OperationsManager.
    * Copy the backup file to a local drive of the new database server.

    • Step3: Restore the operational database on the new server

    * Use Microsoft SQL Server Management Studio to restore the operational database.In this step, you can change the name of the database and choose the file location.
    * Make the database online.verify that the database is online.

    • Step4:Update the registries and configuration files on the management servers

    * Do these steps on each management server in the management group:
    * Update the registry to refer to the new SQL Server-based computer.
    *Log on to the management server with Administrator permissions.
    * Click Start, select Run, type regedit in the Open box, and then click OK to start Registry Editor.
    * Navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Operations Manager\3.0\Setup.
    * For each of the following keys, double-click the name, change the value to the hostname of the SQL Server-based computer now hosting the operational database, and then click OK to save   your changes.
      1. DatabaseName
      2. DatabaseServerName
    * Close the Registry Editor.
    On each management server, edit the following file:

    * %ProgramFiles%\System Center 2012\Operations Manager\Server\ConfigService.config 

    * In the <Category> tags named “Cmdb” and “ConfigStore”, change the value for ServerName to the name of the new SQL server.

    Step5: Update Operations Database to point to new server

    * Open SQL Server Management Studio.
    * Expand Databases, OperationsManager, and Tables.
    * Right-click dbo.MT_Microsoft$SystemCenter$ManagementGroup, and then click Edit Top 200 Rows.
    * Note If the SCOM was installed by upgrading from SCOM 2007 instead of by using the SCOM 2012 install media, you need to modify the dbo.MT_ManagementGroup table instead of the   dbo.MT_Microsoft$SystemCenter$ManagementGroup table.
    * Change the value in the SQLServerName_6B1D1BE8_EBB4_B425_08DC_2385C5930B04 column to reflect the name of the new SQL Server-based computer.
      Save the change.

    Step6: On the new server, update the operational database with the new database server name to specify the location of the Application Performance Monitoring tables

    * Open SQL Server Management Studio.
    * Expand Databases, OperationsManager, and Tables.
    * Right-click dbo.MT_Microsoft$SystemCenter$OpsMgrDB$AppMonitoring, and then click Edit Top 200 Rows.
    * Change the value in the MainDatabaseServerName_5C00C79B_6B71_6EEE_4ADE_80C11F84527A column to reflect the name of the new SQL Server-based computer.
    * Save the change.

    Step7: Update security credentials on the new server hosting the operational database

    Expand Security, expand Logins, and then do the following:

    * Add the data writer account. For more information, see How to Create a SQL Server Login.
    * Add the action account.
    * Add the Data Access Service (DAS) computer account, using the form “domain\computername$”.

    For the DAS computer account, add the following user mappings:
    * ConfigService
    * db_accessadmin
    * db_datareader
    * db_datawriter
    * db_ddladmin
    *db_securityadmin

    Step8: Execute these SQL commands on new Operations database instance:

     sp_configure ‘show advanced options’,1
     reconfigure
     sp_configure ‘clr enabled’,1
    reconfigure
    sdk_users
    sql_dependency_subscriber


    Run the following SQL query:

    SELECT is_broker_enabled FROM sys.databases WHERE name='OperationsManager'

    If the result of this query was an is_broker_enabled value of 1, skip this step. Otherwise, run the following SQL queries:

    ALTER DATABASE OperationsManager SET SINGLE_USER WITH ROLLBACK IMMEDIATE
    ALTER DATABASE OperationsManager SET ENABLE_BROKER
    ALTER DATABASE OperationsManager SET MULTI_USER

    • Step9: Start Operation Manager services

    On all the management servers in the management group, start the Operations Manager services:
    * System Center Data Access
    * System Center Management
    * System Center Management Configuration

    Saturday, 7 March 2015

    SCOM 2012 R2 giving error Operations Manager Database Grooming not compelted Succesfully

    SCOM 2012 R2 giving error Operations Manager Database Grooming not compelted Succesfully:

     
    • You might get this error in your SCOM console and not sure what to do, lets understand what this alert means and work from there fixing this.
    • So when you get this alert, first go and check your grooming settings to see how old alerts can be in SCOM operatoins Database, default is 7 days.
    • Then create a view to filter alerts more than 7 days in closed state
    • If you see more than 10000 alerts then your grooming is not working.
    • Ok now how to fix it.Lets login to to the Operations Manager Database
    • Open the query Window and run SELECT * FROM interaljobhistory order by interaljobhistoryid DESC.
    • You can see 4 jobs with daily date updated, it will have a 0 or 1 net to it. If its 1 then its success.If its 0 then its failed.
    • Now if the failed are more than1 then open the query windows and the run the Grooming Job manually EXEC p_groomingandPartitioning
    • It will take long time some time close to 8 hours. If it succeeds then run the SELECT * FROM interaljobhistory order by interaljobhistoryid DESC and see if it succeded.
    • If it fails the erro will tell you what the issue is. If its transaction log full error, then take a backup of your transaction logs and then run the above job.
    • If the error is temb db full , then increase the space in temp db and try running the query again.
    • If the error is LOCK error, then stop all the SCOM services on the managment server and then run the query and wait till it successeds.
    • You also try changing the grooming settings .increase the number of days from 7 to 30 for all config in grooming settings and then run the job. If it succeds, the start reducing the days 1 day at a time and keep doing till it reaches optimum level.
    • Another technique is to run just the failed jobs that you seel when you run the select query and see if it succeds.