What host are you with - maybe someone with similiar host can try to see if they can replicate this issue?
Billy Koch
Follow me on Twitter:
@DefKoch
Skype: billyk0ch
-
- 24,544 Posts
It sounds like a misconfiguration such that Revo is failing to get the character set of the DB.
Try creating the DB manually in PhpMyAdmin (being sure to set the character set to UTF-8) and rerunning Setup.
-
- 7 Posts
OK, I’m going to have someone check out my server config and see if anything’s up. In the meantime though, and sorry to sound like a stuck record, but why would 2.0.8 install ok? I have a couple of instances of 2.0.8 running on the exact same server but under different virtual hosts, installed as new installations (not upgrades) both before and after I’ve attempted to install 2.1.
-
- 24 Posts
I tried the mysql root account before just to see if it was a permissions issue, but it made no difference
Unfortunately, I cannot go back and recreate the original scenario... both servers have become production 2.0.8 environments. I hope to build a new server and try this again when I get some time between projects.
Thanks Bob and Jason!
-
- 7 Posts
I’ve just been into Php MyAdmin and noticed this message:
"Your PHP MySQL library version 5.0.90 differs from your MySQL server version 5.1.56. This may cause unpredictable behavior."
@fretless, could you have a look and see if you’ve got anything similar? I’m wondering if this might be the root of the issue.
-
- 1,336 Posts
Bump this, exactly the same error for 2.1.0-pl both traditional and git checkout, this is on my main linux test box. I’ve edited the XPDO class error line to dump the DSN, error looks like this :-
[2011-05-25 22:18:28] (ERROR in xPDO::connect @ /var/www/html/local/revolution/2.1/revolution/core/xpdo/xpdo.class.php : 345) SQLSTATE[HY000] [2019] Can’t initialize character set (path: /usr/share/mysql/charsets/) DSN is mysql:host=localhost;dbname=revolution21;charset=
No charset parameter is set for some reason, I’ll try and trace this back when I get time.
Use MODx, or the cat gets it!
-
- 128 Posts
Fresh install of 2.1 fails trying to connect to a database.. works fine in 2.0.8
Connecting to database server:
Could not connect to the database server. Check the connection properties and try again.
[2011-05-26 00:48:28] (ERROR in xPDO::connect @ /home/myaccount/public_html/twopointone/core/xpdo/xpdo.class.php : 344) SQLSTATE[HY000] [2019] Can’t initialize character set (path: /usr/share/mysql/charsets/)
[2011-05-26 00:48:28] (ERROR in xPDO::connect @ /home/myaccount/public_html/twopointone/core/xpdo/xpdo.class.php : 344) SQLSTATE[HY000] [2019] Can’t initialize character set (path: /usr/share/mysql/charsets/)
For some reason, you are not getting a valid charset in the DSN, which in the latest releases of PHP (5.3.6+) causes an error with the MySQL PDO driver. Not sure why your charset is not being set however. Make sure you don’t have any cached JS from the 2.0.x setup. Otherwise, any additional information on why this value is blank when you run a fresh install would be helpful. Others have also reported this problem, but so far, we have not been able to reproduce the problem...
Could it be possible that some servers’ version of usr/share/mysql/charsets (or wherever the mysql charsets file is being stored on a given server) doesn’t support the character set that is being used, or perhaps not in that form (UTF-8 vs utf8, for example)? Or maybe the files’ permissions are incompatible?
On my MAMP installation it’s /Applications/MAMP/Library/Share/mysql/charsets, which folder contains a bunch of xml files. The index.xml file has this entry
<charset name="utf8">
<family>Unicode</family>
<description>UTF-8 Unicode</description>
<alias>utf-8</alias>
<collation name="utf8_general_ci" id="33">
<flag>primary</flag>
<flag>compiled</flag>
</collation>
<collation name="utf8_bin" id="83">
<flag>binary</flag>
<flag>compiled</flag>
</collation>
</charset>