dhr
13.03.2007, 01:25
Hallo zusammen!
Ich betreibe auf einem root-Server (debian-etch) zwei vBulletins auf verschiedenen Domains (mysql 5.0.32-Debian_7-log, php 5.2.0-8, apache2 2.2.3-3.3). Seit einem nicht näher bestimmbaren Zeitraum (evtl. wegen regelmäßigen dist-upgrades...) ist es nun nicht mehr möglich, sagen wir zwei user 'testuser' und 'testüser' eindeutig aus der DB zu selektieren:
die beiden abfragen
select * from user where username = 'testuser'
select * from user where username = 'testüser'
liefern jeweils beide User zurück. In der Folge können sich nun User, die sich z.B. nur durch einen Umlaut/Selbstlaut im Namen unterscheiden, nicht mehr anmelden. Die Neuregistrierung eines Benutzers 'Üser' ist ebenfalls nicht mehr möglich, wenn 'User' schon existiert - fälschlicherweise schlägt die Doublettenprüfung hier eben auch an.
In der mysql-config verwende ich folgende Einstellungen:
[mysqld]
...
character-set-server=latin1
collation-server=latin1_german1_ci
...
Sämtliche DBs und Tabellen stehen auch auf latin1_german1_ci. In der vB-Config macht es keinen Unterschied, ob ich dbtype mysql oder mysqli angebe (letzteres funktioniert auch explizit mit charset=latin1 nicht).
Im phpMyAdmin habe ich dasselbe prolem - dadurch bin ich überhaupt erst draufgekommen. Ich bin mit meinem Latein am Ende. Ich hoffe, Euch fällt etwas ein.
Viele Grüße,
Daniel
Ich betreibe auf einem root-Server (debian-etch) zwei vBulletins auf verschiedenen Domains (mysql 5.0.32-Debian_7-log, php 5.2.0-8, apache2 2.2.3-3.3). Seit einem nicht näher bestimmbaren Zeitraum (evtl. wegen regelmäßigen dist-upgrades...) ist es nun nicht mehr möglich, sagen wir zwei user 'testuser' und 'testüser' eindeutig aus der DB zu selektieren:
die beiden abfragen
select * from user where username = 'testuser'
select * from user where username = 'testüser'
liefern jeweils beide User zurück. In der Folge können sich nun User, die sich z.B. nur durch einen Umlaut/Selbstlaut im Namen unterscheiden, nicht mehr anmelden. Die Neuregistrierung eines Benutzers 'Üser' ist ebenfalls nicht mehr möglich, wenn 'User' schon existiert - fälschlicherweise schlägt die Doublettenprüfung hier eben auch an.
In der mysql-config verwende ich folgende Einstellungen:
[mysqld]
...
character-set-server=latin1
collation-server=latin1_german1_ci
...
Sämtliche DBs und Tabellen stehen auch auf latin1_german1_ci. In der vB-Config macht es keinen Unterschied, ob ich dbtype mysql oder mysqli angebe (letzteres funktioniert auch explizit mit charset=latin1 nicht).
Im phpMyAdmin habe ich dasselbe prolem - dadurch bin ich überhaupt erst draufgekommen. Ich bin mit meinem Latein am Ende. Ich hoffe, Euch fällt etwas ein.
Viele Grüße,
Daniel