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?
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?
My host requires me to use localhost:/tmp/mysql5.sock. If I don't, it won't work.
try:
127.0.0.2/tmp/mysql5.sock
127.0.0.2/tmp/mysql5.sock
Still not working
what about connecting to port 3306 instead of the sock.
ie localhost:3306
ie localhost:3306
If they are friendly, they will do it for you.
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:
change this to:
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...
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...
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.
This happened to me and it foxed me for a bit. Make sure they are just alph-numerics.
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.
This happened to me and it foxed me for a bit. Make sure they are just alph-numerics.
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
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
localhost
Mine worked with 127.0.0.2