APS Installer not working after upgrade to 3.2

Discussion in 'Installation/Configuration' started by BenM, Nov 3, 2020.

  1. BenM

    BenM Member

    All,
    I understand the APS installer has come to an end. Unfortunately, our customers often use this installer. For that reason I enabled the APS installer again via the config, but the installer gives an error message if I want to install a package.

    28.10.2020 - 19:02 - WARNING - PHP Warning: mysqli_connect (): (HY000 / 1045): Access denied for user 'xxxxx' @ 'localhost' (using password: YES) in / var / www / clients / client697 / webxxx / web / install_scripts / db-util.php on line 53 Unable to connect to DB: Access denied for user 'xxxx' @ 'localhost' (using password: YES)

    Given that this error occurs on multiple servers, it will be related to the latest update of ISPCONFIG.
    Until a new installer is available I would like to use the old one. How can the above problem be solved?

    the xxx is for masking

    Thanks in advance.
    Ben
     
  2. Jesse Norell

    Jesse Norell ISPConfig Developer Staff Member ISPConfig Developer

    You can try enabling server debugging, though if I remember correctly there's not a lot of debug messages in the APS installer, so you might have to dig in and add them yourself to figure out what's failing.

    Is this a multi-server install? Or multiple single-servers?

    Is anyone successfully using the APS installer on 3.2? I don't use it myself, but I thought someone may have mentioned it working once enabled. It would be handy to know if this affects everyone or just your servers/setup.
     
  3. BenM

    BenM Member

    Sorry, but no errors from debugging. got this problem from the ispconfig cron.log
    using multiple single-servers

    Thu Nov 5 15:58:01 CET 2020 PHP Warning: mysqli_connect(): (HY000/1045): Access denied for user 'aps5fa412f3a403c'@'localhost' (using password: YES) in /usr/local/ispconfig/server/lib/classes/aps_installer.inc.php on line 328
     
  4. Jesse Norell

    Jesse Norell ISPConfig Developer Staff Member ISPConfig Developer

    I did a quick search and find a couple (2?) threads of folks enabling aps in 3.2, and a few more with instructions of how, but no positive, "... and it worked!". So still don't know that.

    For your case, taking a look that file, it's simply failed a mysql connection for the new user. See what landed in the aps_instances_settings table for that ( "select instance_id from aps_instances_settings where main_database_login = 'aps5fa412f3a403c'" .. then select everything matching that instance_id), then try mysql cli with those credentials to see if the setup is good.

    What OS are you running, and mariadb/mysql version? (It wouldn't surprise me if mysql 8 doesn't work.)
     
    Th0m likes this.
  5. BenM

    BenM Member

    Hi, thanks in advance.

    We are running Serverversie: 10.1.47-MariaDB-0+deb9u1 - Debian 9.13
    It is not entirely clear to me what you mean by looking for aps_instances_settings, but give it a try.
     
  6. BenM

    BenM Member

    I tried to reproduce it and come to the conclusion that the database username is too long and the system hangs on it.
    After the username has been shortened it works well.

    If ISPconfig accepts longer names as before, the problem will probably be resolved.
     
    Jesse Norell likes this.
  7. Jesse Norell

    Jesse Norell ISPConfig Developer Staff Member ISPConfig Developer

    Nice find. I thought usernames were "always" limited to 16 chars, but maybe there are differences in various versions.
     
  8. Th0m

    Th0m ISPConfig Developer Staff Member ISPConfig Developer

    It could be that the APS module allows longer names. As APS will be removed, we don't fix bugs for it anymore.
     
  9. BenM

    BenM Member

    That was already clear, but I do need help with this. Can you give direction where I can look for this?
    Then I can set a limit to the length of the username in the APS installer myself
     
  10. Th0m

    Th0m ISPConfig Developer Staff Member ISPConfig Developer

    Hmm, maybe it is a bug in interface/web/sites/form/database.tform.php -> database_user. Could you test if you can create a normal (outside of APS) db user with a name too long and see if you can log in with that?
     
  11. BenM

    BenM Member

    Database username - 12345678901234567 - too long. The max. database username length incl. prefix is 16 chars.
    16 works fine

    I manually entered the database name created by the aps installer and now I get the message that the database is not unique.
    So the problem is elsewhere. My mistake not to look or think any further.

    Have now checked again. The database user is created, but I cannot log in with the specified password. The password matches the information in the aps_instances_settings, but does not work. The database as mentioned in the aps_instances_settings has not been created.

    Something does not go well when creating the database user.
     
  12. Th0m

    Th0m ISPConfig Developer Staff Member ISPConfig Developer

  13. BenM

    BenM Member

    output debugging
    PHP Warning: mysqli_connect(): (HY000/1045): Access denied for user 'c3aps2'@'localhost' (using password: YES) in /usr/local/ispconfig/server/lib/classes/aps_installer.inc.php on line 328
    -bash: syntax error near unexpected token `('

    I have tested an old server 3.1.15 and the aps installer works fine there. After the update to 3.2 the aps installer no longer works.

    Looking at the differences I replaced aps_guicontroller.inc.php with the old version and it works again.
    I think it is necessary to investigate further what causes this.

    The ISPconfig team may be able to do something with it.
     
    Jesse Norell likes this.
  14. BenM

    BenM Member

    Hallo Till or Th0m, Can you comment?
     
  15. Th0m

    Th0m ISPConfig Developer Staff Member ISPConfig Developer

    Can you try replacing it with the newest version and then removing
    Code:
                                 "backup_format_web" => $websrv['backup_format_web'],
                                     "backup_format_db" => $websrv['backup_format_db'],
    from the file (line 343 and 344)?
     
  16. BenM

    BenM Member

    works, thank you
     
  17. Th0m

    Th0m ISPConfig Developer Staff Member ISPConfig Developer

Share This Page