Serious problems fresh install NC 18 but also 16 17, wrong config parameters database written

For some odd reasons during install the database username is used to create tables, but in the config this username is preceded with oc_. That is not a valid user. It even is not the dtabase username that is used, but the Admin username that is entered in the first field.
In the config.php there is a new password generated by the installer. That password is not used to write the tables earlier.

I’v tried a clean install with Nginx and Apache 2.4, PHP 7.3 and PHP 7.2. I use MariaDB10.
I started with 18.0.0, tried latest release 3, and then 17 and even 16 with the same results.
A clean install of Wordpress went fine, so what is hapening here?

From other topics I see this already an old issue that I never came accross on multiple other installations.

Please help fast. I’m done with Nextcloud after more then 10 hours experimenting, searching a.s.o.

Here’s a good guide.
Maybe it helps.

i had gone with thast guide,
but right now i am facing an error while using updater in web-gui and updater.phar

You’re mixing-up different things. The user name is NOT used to prefix the database tables. The database prefix (‘dbtableprefix’) can be defined separately in the configuration and defaults to “oc_”.

Perhaps I was not clear. Input Start screen setup:

User name: ICTmanagement
User password: Xyz#ârtdfghKj
Database user: Hendrik
Database password ^7%gpwdnln^njdn][jsGdkHftdj
Database port:
Database name: nc2020_cfh

It starts running en then I get an error. In the config.php following is set:

‘dbname’ => ‘nc2020_cfh’,
‘dbhost’ => ‘’,
‘dbport’ => ‘’,
‘dbtableprefix’ => ‘oc_’,
’dbuser’ => ‘oc_ICTmanagement’,
’dbpassword’ => ‘MultipleCAPSand lower’,

One of the generated passwords: k4PH0Ii3GWyXyGbar3zhcbOQCmbGLb

The dbpassword is missing special characters that are needed by MySQL, but that password is not the password I entered. It is internaly generated by NC. (And I did not click on the icon to display the password visible…) The dbuser is wrong too. That should be Hendrik. Sometimes even the port seems to be set to 3306.

I did that. All required PHP modules are present. Settings .ini checked and edited.
B.t.w. The problem did not occure when updating multiple systems. The only warning I get is user.ini that I need to set memory for specific clients (checksum error). We do not want that serverwide.

Try shorter username and password without special characters. This is just a ‘worth of try’. I don’t know if it helps…

Tried that. Password needs 12 char and special characters on the system. In the names no special characters. Even _ left out. I can try to change password settings on the system to try this. But I will first try installing it on a different server in the datacenter.

Tried this on the server that already hosts about 12 NC installations. No special characters in database password. The database is written and correct info in the config.php but,
it ends with an error ‘internal server error’. The config file seems not complete.
The only thing could be [] chacters in the admin user password. The user folder has been created in the Data folder.
Next try …
And without any special character, Server error …
In the log file (data folder) is nothing written about ‘error’ of ‘server’. Only two-factor app is not activated and has ‘error’ text.
In the server log files is nothing written about errors …

So what is wrong with the install script?

Ok. Tried this on WAMP with PHP 7.3.5, Apache 2.4 and MariaDB on port 3307.
Same results. In config:

‘dbtableprefix’ => ‘oc_’,
‘mysql.utf8mb4’ => true,
‘dbuser’ => ‘oc_Henk1’,
‘dbpassword’ => ‘sW3zmOGGJ9DSKhpTNw/gFDV9blaKY9’,

Thus, not what I entered.

And this session ends with this error:

An exception occurred while executing ‘SELECT uid, displayname FROM oc_users WHERE uid_lower = ?’ with params [“henk”]: SQLSTATE[42S02]: Base table or view not found: 1146 Table ‘cldkwalident.oc_users’ doesn’t exist

The table is not created at all, just a settings include table.

But there is the message:
Je koos SQLite als database.

And I DID choose Maria and gave the parameters in. All that input was correct.

So after having tried 3 different server environments with various inputs that all give simmilar errors, I conclude there is a serious bug in the installer.

And for the developer: Deprecated call $.tooltip(‘fixTitle’) has been deprecated and should be removed …

Ok. I did a new attempt on the server in the datacenter.
Empty database and NC folder.
Copy NC 18.0.1 to server folder.
Install without special characters and as database server: without a port (the is only MariaDB active on this server)
It ended up with an ‘internal server error’.
But the config is now OK.

So I did a rare thing. I copied again all NC 18.0.1 files to the server except the config folder and gave an ‘overwrite’ instruction in FileZilla.

And what happens: the ‘internal server errror’ is gone. It now opens as it should!

What is different from the other servers that I can not get NC to work on:
They have not only MariaDB and they use an other port setting then the default 3306 for the database.
The issue seems to be related to this thread:

I just installed a testing instance of Nextcloud 18.0.1 and had no problems. Database user credentials were not complex at all though:

Database user: dummy
Database password: dummy
Database name: dummy
Database host: localhost

config.php was created with these values correctly.

Indeed. That is he way it used to work. I never had these install problems before.
I think the problem has to do with the port. That port settings are needed on systems that have multiple database engines.

Should be fixed with (worth to check the issue tracker, too :slight_smile: )

Yes. The issue tracker … I did a lot of searching, but not the issue tracker.
I will try to install NC again this week with latest fixes.