Updating to 5.10 from Softaculous - pdo_mysql required

Version v5.10.40

Environment Shared Hosting

Checklist

  • Can you replicate the issue on our v5 demo site https://demo.invoiceninja.com or Invoice Ninja? NO
  • Have you searched existing issues? YES
  • Have you inspected the logs in storage/logs/laravel.log for any errors? YES

Describe the bug

When updating via Softaculous, it had asked to update PHP version to 8.2 or above. It then listed PHP Extensions that was required. These were enabled and allowed me to continue the update.
After the update, I was presented with the Setup screen asking for the database and user details.
As this was an update, it shouldn’t need it. The database and .env file was still intact with the previous version configuration.

I discovered one of the PHP Extensions were missing from the update script ‘required extensions’ → php_mysql

After enabling this, everything worked fine.

Additional context

During update to 5.10, one of the PHP Extensions that was required wasn’t checked against and listed before proceeding with the update (pdo_mysql).

Logs

[2024-11-21 11:05:41] production.ERROR: could not find driver (Connection: mysql, SQL: select * from client_contacts where id = 42 and client_contacts.deleted_at is null limit 1) {“exception”:"[object] (Illuminate\Database\QueryException(code: 0): could not find driver (Connection: mysql, SQL: select * from client_contacts where id = 42 and client_contacts.deleted_at is null limit 1) at /home/public/ninja.***.com/vendor/laravel/framework/src/Illuminate/Database/Connection.php:825)

[previous exception] [object] (PDOException(code: 0): could not find driver at /home/public/ninja.***.com/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)

This has been solved however I feel it may be helpful if anyone else comes across this issue.

1 Like