Database troubles

Permalink 1 user found helpful
I'm trying to install Concrete5 a website hosted by ICDsoft. I get to the installation page, and entered in the database details. But it say it can't connect to the database. I'm sure all the details are correct.

The server is localhost:/tmp/mysql5.sock, but I don't think that should cause problems, should it?

Any way to troubleshoot, or get the exact error MySQL is returning?

CloudedVision
 
synlag replied on at Permalink Reply
synlag
try only

localhost

Mine worked with 127.0.0.2
CloudedVision replied on at Permalink Reply
CloudedVision
My host requires me to use localhost:/tmp/mysql5.sock. If I don't, it won't work.
synlag replied on at Permalink Reply
synlag
try:

127.0.0.2/tmp/mysql5.sock
CloudedVision replied on at Permalink Reply
CloudedVision
Still not working
0pius replied on at Permalink Reply
0pius
what about connecting to port 3306 instead of the sock.

ie localhost:3306
synlag replied on at Permalink Reply
synlag
If they are friendly, they will do it for you.
DueSoft replied on at Permalink Reply
DueSoft
I had the same issue on a managed server at 1and1 that required "localhost:/tmp/mysql5.sock" to connect to the DB.
It turns out, that the issue relies on the way how adodb builds the connection info. It first puts all info (from c5 install page) into one string, and later it separates it again. But here it misinterprets the first / of the local host setting as a separator to the user name. Result: no connection to DB (user name and host is wrong).
A quick and dirty workaround is the following:
Open file "/concrete/libraries/3rdparty/adodb/adodb.inc.php" near line 4256 you find:
$ok = $obj->Connect($dsna['host'], ...

change this to:
$ok = $obj->Connect($dsna['host'].':/tmp/mysql5.sock', ...


Then, on c5 install page just use localhost

This worked perfectly in my case.
I am sure there is a better way, but if it works...
norm1037 replied on at Permalink Reply
Check you do not have special characters like % etc in the mysql users password.

This happened to me and it foxed me for a bit. Make sure they are just alph-numerics.
norm1037 replied on at Permalink Reply
Check you do not have special characters like % etc in the mysql users password.

This happened to me and it foxed me for a bit. Make sure they are just alph-numerics.
keygrip replied on at Permalink Reply
Normally, when you install web applications which connect to the MySQL 5 database on icdSoft servers, you could use "localhost:/tmp/mysql5.sock" as a database server host. Concrete5, however, uses a MySQL library that does not accept the MySQL socket when specified as "localhost:/tmp/mysql5.sock", i.e. the MySQL socket needs to be specified in a separate field which, unfortunately, is not present in the installation screen.

To be able to connect to the MySQL 5 database and successfully install the Concrete5 CMS, you should take the following steps:

1. Login to your hosting Control Panel and navigate to the MySQL Databases section there.
2. Make sure that remote connections are enabled for the database and the respective user that you want to use.
3. Then navigate to the installation page of your web application and enter the following in the "Server" field:

mysql5.server303.com:3307