Errors on registering database

jdegoeijdegoei Posts: 3
edited April 25, 2012 6:35AM in MySQL Compare
I'm retrieving 2 different (perhaps related) errors while registering de left-hand database. (credentials are ok, errors occur in MySQL Compare form at the second step).

First I got a time out expired (is it possible to set the time out somewhere)?

Second a conversion error type System.DBNull to System.String.

I'm trying to compare a local development-database with a remote production-database.

Comments

  • Hi

    Unfortunately there is no way setting the connection timeout at the moment. If you enable verbose logging (which you can do by clicking the icon in the top left hand corner of the window and using the menu item to set the log level) and then try and connect to the database again the error should get added to the log. If you could post the exception I will try and track it down and get you a fixed version. I am afraid you might have to wait until next week til I can get you a fix as I am on holiday at the moment.

    Lionel
    Software Engineer
    Red Gate Software
  • I had a similar problem with a local database being slow to register.

    It appears that during my upgrade of MySQL from V4.1 to V5 (so I could use MySQL Compare) some of my databases got a bit, well, broken – fortunately they are only development ones so I was able to delete them.

    A quick check in the MySQL error file (something like C:\ProgramData\MySQL\MySQL Server 5.1\data\<computername>.err) showed the problem.

    Deleting the corrupt databases solved the slow registering problem.

    What was a little concerning is that the databases I was comparing were not the ones with the problems, so something MySQL Compare is doing to enumerate things gets affected by other databases.

    Steve.
  • Hi

    MySQL Compare uses the INFORMATION_SCHEMA tables to get the schema information about the two databases in the comparison. Since the information_schema tables hold information about all the databases on the server I suspect that MySQL is trying to load the information about the corupt databases even though I am filtering out that information. Not sure how much I will be able to do about fixing the slow registration problem as it is sounds like a MySQL issue. I will try and see if I can track the problem down and think of a way round the it.

    Lionel
    Software Engineer
    Red Gate Software
  • Hi Lionel,

    Below the output of my logfile after setting verbose logging.
    I'm not getting any timeouts anymore, the only error now seems to be a cast-exception.

    With kind regards,

    Jamie.


    09:16:44.933|Info |Logging |1 |Current Logging levels enabled: Verbose,Warning,Fatal,Debug,Information,Trace,Error
    09:17:28.424|Error |Engine Service |1 |:Exception in progress dialog
    System.InvalidCastException: Kan een object van het type System.Byte[] niet converteren naar het type System.String.
    bij r.i()
    bij r.b()
    bij RedGate.MySQL.ObjectModel.Population.DatabasePopulationHelper.a(IPopulator )
    bij RedGate.Shared.Controls.ProgressDialogEx.e()
    09:18:38.709|Error |Engine Service |1 |:Exception in progress dialog
    System.InvalidCastException: Kan een object van het type System.Byte[] niet converteren naar het type System.String.
    bij r.i()
    bij r.b()
    bij RedGate.MySQL.ObjectModel.Population.DatabasePopulationHelper.a(IPopulator )
    bij RedGate.Shared.Controls.ProgressDialogEx.e()
  • bdillbdill Posts: 42 Bronze 2
    I have a similar error. One of my databases compare just fine, but most give the following error when registering the 2nd (and remote) database:
    Unable to cast object of type 'System.DBNull' to type 'System.String'.
    

    Verbose log file...
    00:21:37.488|Info   |Logging             |1  |Current Logging levels enabled: Verbose,Warning,Fatal,Debug,Information,Trace,Error
    00:21:52.301|Error  |Engine Service      |1  |:Exception in progress dialog
    System.InvalidCastException: Unable to cast object of type 'System.DBNull' to type 'System.String'.
       at r.i&#40;&#41;
       at r.b&#40;&#41;
       at RedGate.MySQL.ObjectModel.Population.LivePopulator.Populate&#40;&#41;
       at RedGate.MySQL.ObjectModel.Population.DatabasePopulationHelper.a&#40;IPopulator &#41;
       at RedGate.MySQL.ObjectModel.Population.DatabasePopulationHelper.PopulateDatabase2&#40;&#41;
       at RedGate.Shared.Controls.ProgressDialogEx.e&#40;&#41;
    
  • Hi dear if you are facing Errors on registering database then first option for you that you can check your coading if you are unable to fix your problem then contact with good tech team which help you.
Sign In or Register to comment.