Databases being created but not database users

Discussion in 'Installation/Configuration' started by zpl, Apr 30, 2014.

  1. zpl

    zpl New Member

    I'm running ISPConfig 3.05.4p1 on ubuntu 13.04

    I recently changed my mysql root password and after I figured I had done the wrong thing, changed it back to what it originally was. Since doing this I've experienced the following issue.

    When I add a new database, it doesn't get added to mysql instantly but takes about a minute or so. I assume this is normal.

    When I add a new database user it never gets added to mysql.

    • My root user has all permissions.
    • I've checked the settings in /usr/local/ispconfig/server/lib/mysql_clientdb.conf and it all looks correct.
    • When I run /usr/local/ispconfig/server/server.sh no errors are reported on the console or in the system log.
    • When I change my $clientdb_user setting 'notroot' in mysql_clientdb.conf then rerun server.sh I don't get any error messages on the console or the system log
    • I then run "Resync clientdb config" from the tools page on the web interface the re-run server.sh and get plenty or error messages (logon errors due to the notroot user). At least I know the value is being read.
    • I change the $clientdb back to root, rerun the "Resync clientdb config" then rerun server.sh. I runs without error but my user doesn't get created

    What else should I be looking at ?
     
  2. till

    till Super Moderator Staff Member ISPConfig Developer

    Database users get added to mysql at the time when you add a new database that uses this user.
     
  3. zpl

    zpl New Member

    Wow, how easy was that!

    Just added the database and the user appeared.

    I've been slaving over this all afternoon and have resorted to added extra logging in mysql_clientdb_plugin.inc.php, with not much luck.

    Thank you massively!
     
  4. till

    till Super Moderator Staff Member ISPConfig Developer

    The reason for that behaviour is quite simple: ISPConfig is a multiserver controlpanel, so you can have lets say 20 database servers in your cluster. A database user can be used for more then one database, but these databases can be on different servers. So the system can not know on which servers the user needs to be created before the actual database is added and as we do not want to add unused "spare" users on all 20 servers, the user gets added at the time it is required for a database login and thats the time you add a database.
     

Share This Page