I am installing SuiteCRM on my Synology NAS and I keep getting this error message:
“Database Support was not found. Please make sure you have the necessary drivers for one of the following supported Database Types: MySQL or MS SQLServer. You might need to uncomment the extension in the php.ini file, or recompile with the right binary file, depending on your version of PHP. Please refer to your PHP Manual for more information on how to enable Database Support”
I succesfully run Joomla, using PHP7 on this machine so I do not get why this is apparently a problem for my SuiteCRM installation.
Well, did you check your php.ini as instructed? How is the database configuration there?
Note that there can be multiple PHP installations on the same server, and multiple php.ini’s. You need to make sure you’re editing the correct one.
You’re probably using at least two of those. The one you get from “php --ini” is the CLI (command-line one). This only affects SuitecRM for Scheduler jobs launched via crontab.
The one you really need is the one your web server is using.
Use this command
sh -c 'echo "<?php phpinfo(); ?>" > /var/www/html/info.php'
This will create a file called info.php in /var/www/html. I am assuming that is the root directory your web server is serving; if not, please adjust the command.
Thnx again. I can now confirm the version is indeed 7.0! So far so good. I now run into the next issue: when connecting to the MySQL database it does not recognize the database/credential:
“The provided database host, username, and/or password is invalid, and a connection to the database could not be established. Please enter a valid host, username and password”
l know rhat the username and pwd I used are the correct ones (used them on the Joomla installation, but it seems that the db cannot be called.
That was meant to help you with the database problem, not just to check PHP version.
From the output of phpinfo, you can check two things:
The path to your php.ini, where you can change settings
The modules that are loaded, where you can confirm your settings become effective.
There are some modules for database access, I believe it should be mysqli but there might be different names on different systems.
Then to get the connection right you will probably want to use just “localhost” as the host, and then your username and password. Don’t add a port number, and don’t use 127.0.0.1 (I am assuming the database is on the same server, and in the standard port - tell me if not).
The MySQLi database is indeed on the same system and I see the path to the php.ini file. Running the php info shows that MySQLi is active (see below). I do not know exactly what to look for in the php.ini file.
mysqli
MysqlI Support enabled
Client API library version mysqlnd 5.0.12-dev - 20150407 - $Id: b5c5906d452ec590732a93b051f3827e02749b84 $
Active Persistent Links 0
Inactive Persistent Links 0
Active Links 0
Directive Local Value Master Value
mysqli.allow_local_infile On On
mysqli.allow_persistent On On
mysqli.default_host no value no value
mysqli.default_port 3306 3306
mysqli.default_pw no value no value
mysqli.default_socket /run/mysqld/mysqld.sock /run/mysqld/mysqld.sock
mysqli.default_user no value no value
mysqli.max_links Unlimited Unlimited
mysqli.max_persistent Unlimited Unlimited
mysqli.reconnect Off Off
mysqli.rollback_on_cached_plink Off Off
When I type in the command it says “command not found”. I think it has to do with not sufficient rights (though I a logged in via SSH as admin), or there is a PATH issue and cannot find the mysql command…
I searched for the mysql command (using “find”) and found it at the following location: “/usr/local/mariadb10/bin/mysql”.
I ran the command you gave me earlier with the full path and was able to log in as root!
Therefore I assume I need to add /usr/local/mariadb10/bin/ to my $PATH? Is that correct, or is it better to do something else?
Other than that, I am a bit confused by your feedback, I’ve asked several questions that have gone unanswered - I would prefer to know clearly the exact text of your error, and the exact values you’re trying.
I added a screenshot of where I get stuck. The credentials can be found in that screenshot 9of course not the passwords). The software resides in the directory /web/kantoor on my Synology DiskStation
Below is also the part from the log file:
2018-09-20 05:56:00…Begin DB Check Process *************
2018-09-20 05:56:00…testing with mysql:mysqli
2018-09-20 05:56:00…Basic form info is valid, continuing Process.
2018-09-20 05:56:00…Testing user account…
2018-09-20 05:56:00…ERROR:: The provided database host, username, and/or password is invalid, and a connection to the database could not be established. Please enter a valid host, username and password
2018-09-20 05:56:00…FATAL:: errors have been detected! User will not be allowed to continue. Errors are as follow:
2018-09-20 05:56:00… The provided database host, username, and/or password is invalid, and a connection to the database could not be established. Please enter a valid host, username and password
2018-09-20 05:56:00…End DB Check Process *************
I am about to give up on this one… seems something funky in the Synology set-up, but cannot figure it out… installing packages via the Synology interface goes fine, but when I do not have a package and do a manual install it gets stuck. There is SugarCRM package and I could then take it from there ad migrate it to SuiteCRM (used to work some years ago). I also logged a ticket with Synology, though no response yet.
But to answer your questions:
Using 127.0.0.1 as host also does not resolve the issue
No response wehn telnetting to port 3306 (mysqli listening port). Also netstat -nld|grep 3306 shows there is no listening port 3306 active. But I am not sure if this is needed as SueCRM is installed on the same machine as the MariaDB and mysql.
Any last suggestions? Else we call it a day and maybe I will recommence my quest to get this fixed; I do know now it is a Synology issue, not SuiteCRM issue.
I cannot believe it, but it seems to be working now!
Basically two items I did, but I do not knwo what lead to the resolution:
I added PHP5.6 to the system again. PHP7 is still installed and actually active in my /web directory (using the info.php file).
I installed MariaDB5 again on my machine. I left MariaDB10 installed, so both coexist.
I think the solution is in the 2nd item ince I see the suteCRM db created under MariaDB5 now.
MariaDB5 listens to port 3306 whereas MariaDB10 listens to port 3307. Maybe in the install files a call to port 3306 is default, but I am certainly not the expert on that.
Maybe this information is of some value to you. Let me know if this can solve the problem so I can later retry the insal on MariaDB10 al well.
For now I will start the configuration of my CRM (happy!!!)