collation_connection mysql ändern
Hallo, ich möchte gerne die collation_connection bei mysql von latin1_swedish_ci auf latin1_german1_ci ändern. Jedoch schlagen alle Versuche in der my.cnf fehl. Der Server startet dann gar nicht, und ich bekomme im besten Fall, wenn er nicht als solches die Variable anmeckert, folgende Fehlermeldung: Character set 'latin1_german1_ci' is not a compiled character set and is not specified in the '/usr/share/mysql/charsets/Index.xml' file Hätte denn eventuell jemand ne Idee was man besser machen könnte, oder was ich falsch mache, bzw. wie man die collation_connection permanent auf latin1_german1_ci setzten kann. Gruß Holm -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)
Re: collation_connection mysql ändern
Andreas Pakulat schrieb: Wie sieht denn deine Config aus? Welche Fehlermeldungen siehst du in den Logfiles? Also nachdem ich habe die Standard Debian .cnf nachdem ich mal eine utf8 config aus einem gewissen Forum probiert habe, aber da kommt mein Cyrus-Imap mit der MySQL Authntifizierungstabelle nicht mit klar, wahrscheinlich weil die noch im anderen Zeichensatz ist ioder so (k.a. - anderes Thema) [client] port= 3306 socket= /var/run/mysqld/mysqld.sock [mysqld_safe] socket= /var/run/mysqld/mysqld.sock nice= 0 [mysqld] user= mysql pid-file= /var/run/mysqld/mysqld.pid socket= /var/run/mysqld/mysqld.sock port= 3306 basedir= /usr datadir= /var/lib/mysql tmpdir= /tmp language= /usr/share/mysql/english skip-external-locking character-set-server=latin1 collation-server=latin1_german1_ci old_passwords= 1 bind-address= 127.0.0.1 key_buffer= 16M max_allowed_packet= 16M thread_stack= 128K query_cache_limit= 1048576 query_cache_size= 16777216 query_cache_type= 1 log= /var/log/mysql.log log-slow-queries= /var/log/mysql/mysql-slow.log log-bin= /var/log/mysql/mysql-bin.log max_binlog_size = 104857600 skip-bdb [mysqldump] quick quote-names max_allowed_packet= 16M [mysql] [isamchk] key_buffer= 16M Die Logs sagen eigentlich nichts kein error. ausser die Meldungen auf der Konsole im vorherigen Thread. mysql.err wird bei mir gar nicht geloggt, sollte ich eigentlich mal aktivieren. syslog: Jun 12 13:55:57 srv1 /etc/init.d/mysql[4317]: /etc/mysql/debian-log-rotate.conf is obsolete, see /usr/share/doc/mysql-server-5.0/NEWS.Debian.gz Jun 12 13:55:57 srv1 /etc/mysql/debian-start[4328]: Checking for crashed MySQL tables. und im mysql.log der wird bei mir dermasseb zugemüllt, mal ehrlich ich kann da nicht sinvvolles suchen und entdecken. Character set 'latin1_german1_ci' is not a compiled character set and is not specified in the '/usr/share/mysql/charsets/Index.xml' file Was sagt show collation like latin1% bei dir? (im mysql client ausgefuehrt) mysql show collation like latin1%; +---+-++-+--+-+ | Collation | Charset | Id | Default | Compiled | Sortlen | +---+-++-+--+-+ | latin1_german1_ci | latin1 | 5 | | Yes | 1 | | latin1_swedish_ci | latin1 | 8 | Yes | Yes | 1 | | latin1_danish_ci | latin1 | 15 | | Yes | 1 | | latin1_german2_ci | latin1 | 31 | | Yes | 2 | | latin1_bin| latin1 | 47 | | Yes | 1 | | latin1_general_ci | latin1 | 48 | | Yes | 1 | | latin1_general_cs | latin1 | 49 | | Yes | 1 | | latin1_spanish_ci | latin1 | 94 | | Yes | 1 | +---+-++-+--+-+ 8 rows in set (0.00 sec) Gruß Holm -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)
Re: collation_connection mysql ändern
Andreas Pakulat schrieb: Also nachdem ich habe die Standard Debian .cnf nachdem ich mal eine utf8 config aus einem gewissen Forum probiert habe, 1. Ich kriege in den Satz irgendwie keinen Sinn rein ;-) 2. Ich hoffe du hast nicht die Debian.cnf ueberschrieben, sondern Debians my.cnf? ich sollte vielleicht genauer schreiben Also ich habe mal eine anscheinend optimierte my.cnf probiert, danach lief gar nichts mehr mit meinem Cyrus-Imap der sich über mysql authentifiziert (andauernd login Probleme) Das ist sie: [client] port= 3306 socket= /var/run/mysqld/mysqld.sock character_set = utf8 default-character-set = utf8 [mysqld_safe] socket= /var/run/mysqld/mysqld.sock nice= 0 [mysqld] user= mysql pid-file= /var/run/mysqld/mysqld.pid socket= /var/run/mysqld/mysqld.sock port= 3306 basedir= /usr datadir= /var/lib/mysql tmpdir= /tmp language= /usr/share/mysql/english skip-external-locking character-set-server = utf8 default-character-set = utf8 old_passwords= 1 bind-address= 127.0.0.1 key_buffer= 16M max_allowed_packet= 16M thread_stack= 128K query_cache_limit= 1048576 query_cache_size= 16777216 query_cache_type= 1 log= /var/log/mysql.log log-slow-queries= /var/log/mysql/mysql-slow.log log-bin= /var/log/mysql/mysql-bin.log max_binlog_size = 104857600 skip-bdb [mysql] character-sets-dir= utf8 default-character-set = utf8 [mysqldump] quick quote-names max_allowed_packet= 16M character-sets-dir= utf8 default-character-set = utf8 [isamchk] key_buffer= 16M character-sets-dir= utf8 [mysqladmin] character-sets-dir= utf8 default-character-set = utf8 [mysqlcheck] character-sets-dir= utf8 default-character-set = utf8 [mysqlimport] character-sets-dir= utf8 default-character-set = utf8 [mysqlshow] character-sets-dir= utf8 default-character-set = utf8 [myisamchk] character-sets-dir= utf8 [myisampack] character-sets-dir= utf8 character-set-server=latin1 collation-server=latin1_german1_ci Hmm, das obige ist bei mir utf8, das untere fehlt. Der Rest der Config ist original soweit ich das sehe. Und wenn du da jetzt dein collation-connection=latin1_german1_ci drunter schreibst passiert was? Oder wo hast du das eingetragen? Koenntest auch collation_connection mal unter [client] eintragen... ok, unter client eingetragen, dann startet zwar der mysql-server aber wenn ich mich einlogge über konsole kommt das: mysql -p mysql: unknown variable 'collation-connection=latin1_german1_ci' Gruß Holm -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)
Re: collation_connection mysql ändern
Heute (12.06.2006/15:24 Uhr) schrieb Holm Kapschitzki, ich sollte vielleicht genauer schreiben Gruß Holm besser da [EMAIL PROTECTED] fragen -- Viele Gruesse, Kind regards, Jim Knuth [EMAIL PROTECTED] ICQ #277289867 -- Zufalls-Zitat -- Das Fernsehen hat feste Regeln. Bei den Western gewinnen immer die Guten, bei den Nachrichten immer die Bösen. (Robert Lembke, dtsch. Quizmaster, 1913-1989) -- Der Text hat nichts mit dem Empfaenger der Mail zu tun -- Virus free. Checked by NOD32 Version 1.1593 Build 7453 12.06.2006
Re: collation_connection mysql ändern
Andreas Pakulat schrieb: Naja, da muesste man wissen ob Cyrus die angegebenen login-Daten passend fuer mysql konvertiert. Wenn der naemlich nen latin1-Bytestrom reingibt und die mysql-lib annimt das ist utf8, kommt da nur Muell bei raus, sobald du nicht-Ascii Zeichen drin hast. ich werde das mal auschecken [client] port= 3306 socket= /var/run/mysqld/mysqld.sock character_set = utf8 default-character-set = utf8 Da solltest du das Characterset reintun das auch der Cyrus benutzt, also vmtl. latin1. ok character-set-server = utf8 default-character-set = utf8 Das sollte erstmal kein Problem darstellen, dadurch werden neue Datenbanken automatisch mit utf-8 Kodierung fuer Text-Attribute angelegt. Bestehende Datenbanken haben bereits ein Charset. im endeffekt möchte ichja alles bei utf-8 haben, habe aber so das Gefühl das man ein Produktivsystem nicht so ohne weiteres auf utf-8 umstellen sollte. Wenn man von vorne Anfängt ist utf-8 schon einfacher. [mysqldump] quick quote-names max_allowed_packet= 16M character-sets-dir= utf8 default-character-set = utf8 Das ist u.U. sinnvoll wenn man DB's mit mehreren verschiedenen 8Bit Kodierungen hat, so kann man eine ganze Datenbank in eine Datei dumpen. ok character-set-server=latin1 collation-server=latin1_german1_ci Hmm, das obige ist bei mir utf8, das untere fehlt. Der Rest der Config ist original soweit ich das sehe. Und wenn du da jetzt dein collation-connection=latin1_german1_ci drunter schreibst passiert was? Oder wo hast du das eingetragen? Koenntest auch collation_connection mal unter [client] eintragen... ok, unter client eingetragen, dann startet zwar der mysql-server aber wenn ich mich einlogge über konsole kommt das: mysql -p mysql: unknown variable 'collation-connection=latin1_german1_ci' Da bin ich jetzt langsam auch ueberfragt. Schuss ins Blaue: Mal mit _ statt - probieren. Und wenn du das unter [mysql] eintraegst kriegst du keine solche Meldung? Und Textvergleiche werden auch nicht nach der DIN 1 Norm gemacht? (also sowas wie select * from foobar order by textspalte) egal wie und wo ich s eintrage, immer das gleiche : unknown variable Ich werde mal die ganzen Sachen mir nochmal genauer ansehen. Andreas, danke für Deine ausführlichen Erklärungen und das nicht nur in diesem Thread ... :) Gruß Holm -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)