Zeichensatz / Kollation der MySQL-Verbindung

Begonnen von Mecki, 01 Juli 2006, 04:17:38

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

Mecki

Hi,

wie lautet der genaue Befehl zur Änderung der globalen default Einstellung "latin1_swedish_ci"?

ich möchte den Befehl --default-character-set=latin1_de beim Start von mysql eingeben.

In der Doku bei mysql steht:
In MySQL 4.0, to get German sorting order, you should start mysqld with a --default-character-set=latin1_de option. ...

Wie ich mysql stoppe und starte weiß ich ja, ich weiß nicht wie ich diesen befehl eingeben muss.

LG
Mecki
Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

Musicman75

ich würd jetzt mal sagen, dass du folgenden befehl eingeben musst in der console:

rc mysql start --default-character-set=latin1_de
Unaufgeforderte Support PMs & Emails werden ignoriert

Immer erst die Boardsuche verwenden und gegebenenfalls einen neuen Threat eröffnen, wenn das Problem noch nicht behandelt wurde!

Mecki

Hi,

also irgendwie haut das alles nicht hin.
die Kollation ist bei mir default latin1_swedish_ci, stelle ich es auf latin1_german1_ci habe ich trotzdem Probleme mit den Sonderzeichen ( ä ü ö ) usw. sobald ich die Tabellen ziehe und wieder hochspiele. Auch wenn ich komplett neu installiere, das Ergebnis ist immer gleich.

Wie stelle ich diese Mist-Kollation vernünftig ein?

LG
Mecki
Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

Mecki

Hi,
oder kann mir jemand erklären, wie ich über root ein älteres MYSQL installieren kann? Das habe ich noch nie gemacht. Aber die Kollation will ich nicht mehr, die muss weg*g

LG
Mecki
Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

Mecki

Hi,

so ich habe jetzt in my.cnf folgendes eingetragen. Leider habe ich immer noch die gleichen Probleme mit den Sonderzeichen wenn ich eine Tabelle ziehe und öffne. Ich hasse diese Kollation*g Hat einer eine Idee?

LG
Mecki

[client]
character_set         = utf8
default-character-set = utf8
[mysql]
character-sets-dir    = utf8
default-character-set = utf8
[mysqladmin]
character-sets-dir    = utf8
default-character-set = utf8
[mysqlcheck]
character-sets-dir    = utf8
default-character-set = utf8
[mysqldump]
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
[isamchk]
character-sets-dir    = utf8
[myisampack]
character-sets-dir    = utf8
[mysqld]
character-set-server  = utf8
default-character-set = utf8
Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

Mecki

*hmpf
die MYSQL Version 4.1.13 hat ein Bug  >:( Client lässt sich nicht konfigurieren*nerv

Ich möchte ein upgrade machen von 4.1.13 zu 4.1.14. Es wäre lieb wenn mir jemand erkären würde, wie ich das am besten umsetzen kann. Oder das mir einer wenigsten eine deutsche Anleitung empfehlen könnte.

Bitte dringend um Hilfe  ;)

LG
Mecki
Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

Mecki

Danke,

sagt mal habe ich etwas verbrochen, das ich keine Antwort bekomme?

LG
Mecki
Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

Mecki

Ok,

irgendwie liege ich vollkommen daneben. Ich weiß absolut nicht mehr weiter. Hier haben doch bestimmt einige einen Server von Strato. Ich kann einstellen was ich möchte,   ä ü ö etc. werden nicht richtig angezeigt. Zu Strato habe ich schon drei emails geschickt, aber ich leider immer noch keine Antwort bekommen.

Bitte was mache ich verkehrt?

In my.cnf habe ich:
[client]
character_set         = utf8
default-character-set = latin1_german1_ci

Sehe ich mir die Variablen der Datenbank an steht dort aber bei [client]:
Wert: utf8
Globaler Wert latin1

Ich kann in der my.cnf eingeben was ich will, die Werte bei [client] ändern sich nicht. Bei [mysqld] etc. werden die Werte übernommen.

LG
Mecki

Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

jubilee

ZitatIch kann in der my.cnf eingeben was ich will, die Werte bei [client] ändern sich nicht.

Wenn Du als Client phpMyAdmin verwendest, hast Du da denn auf der Startseite die charsets für die Mysql-Verbindung und den clienten geändert ?

MfG

Mecki

Hi,

ich habe jetzt alles aut utf8 stehen.
Über phpmyadmin sieht das so aus.

Zeichensatz / Kollation der MySQL-Verbindung: utf8_general_ci

Wert für diese Sitzung utf8

Globaler Wert utf8

Bei
collation connection - collation database - collation server steht  utf8_general_ci

Leider komme ich nicht weiter*g

LG
Mecki

Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

jubilee

Zitatich habe jetzt alles aut utf8 stehen.
Verstehe ich jetzt nicht. Warum wunderst Du dich denn das für den Clienten UTF8 angezeigt ist, wenn Du diesen auch nach UTF8 eingestellt hast ?
Stell Zeichensatz / Kollation der MySQL-Verbindung auf latin1_german1_ci
Und lege dann die Tabellen auch mit diesen Charset an.
Oder ändere den Defaultcharset (my.cnf) auf einen latin1 - charset um.
UTF8 ist in jedem Fall fasch.
MfG

Mecki

@Jubillee,

das habe ich ja gemacht, das Ergebnis ist aber das gleiche  >:(

LG
Mecki
Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

Mecki

Ein Beispiel:

--
-- Tabellenstruktur für Tabelle `nuke_modules_comments`
--

CREATE TABLE `nuke_modules_comments` (
  `tid` int(11) NOT NULL auto_increment,
  `pid` int(11) NOT NULL default '0',
  `id` int(11) NOT NULL default '0',
  `date` datetime default NULL,
  `name` varchar(60) collate latin1_german1_ci NOT NULL default '',
  `email` varchar(60) collate latin1_german1_ci default NULL,
  `url` varchar(60) collate latin1_german1_ci default NULL,
  `host_name` varchar(60) collate latin1_german1_ci default NULL,
  `subject` varchar(85) collate latin1_german1_ci NOT NULL default '',
  `comment` text collate latin1_german1_ci NOT NULL,
  `score` tinyint(4) NOT NULL default '0',
  `reason` tinyint(4) NOT NULL default '0',
  `module` varchar(255) collate latin1_german1_ci NOT NULL default '',
  PRIMARY KEY  (`tid`),
  KEY `tid` (`tid`),
  KEY `pid` (`pid`),
  KEY `sid` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_german1_ci AUTO_INCREMENT=1 ;

--
-- Daten für Tabelle `nuke_modules_comments`
--
Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

jubilee

Ist jetzt sowohl im Server als auch im Clienten ein Latin-Zeichensatz angegeben oder läuft einer der beiden immer nocht mit UTF8 ?

Mecki

@Jubilee,

das ist ja mein Problem.

character set client  Wert für diese Sitzung utf8 Globaler Wert latin1
character set results Wert für diese Sitzung  utf8 Globaler Wert latin1
character set system  Wert für diese Sitzung utf8  Globaler Wert utf8


# Example MySQL config file for medium systems.
#
# This is for a system with little memory (32M - 64M) where MySQL plays
# an important part, or systems up to 128M where MySQL is used together with
# other programs (such as a web server)
#
# You can copy this file to
# /etc/my.cnf to set global options,
# mysql-data-dir/my.cnf to set server-specific options (in this
# installation this directory is /var/lib/mysql) or
# ~/.my.cnf to set user-specific options.
#
# In this file, you can use all long options that a program supports.
# If you want to know which options a program supports, run the program
# with the "--help" option.

# The following options will be passed to all MySQL clients

[client]
character_set = latin1
default-character-set = latin1
#password = your_password
port = 3306
socket = /var/lib/mysql/mysql.sock

# Here follows entries for some specific programs

# The MySQL server
[mysqld]
character-set-server = latin1
default-character-set = latin1
collation-server = latin1_german1_ci
port = 3306
socket = /var/lib/mysql/mysql.sock
skip-locking
key_buffer = 16M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
language = /usr/share/mysql/german

# Don't listen on a TCP/IP port at all. This can be a security enhancement,
# if all processes that need to connect to mysqld run on the same host.
# All interaction with mysqld must be made via Unix sockets or named pipes.
# Note that using this option without enabling named pipes on Windows
# (via the "enable-named-pipe" option) will render mysqld useless!
#
#skip-networking

# Replication Master Server (default)
# binary logging is required for replication
# log-bin

# required unique id between 1 and 2^32 - 1
# defaults to 1 if master-host is not set
# but will not function as a master if omitted
server-id = 1

# Replication Slave (comment out master section to use this)
#
# To configure this host as a replication slave, you can choose between
# two methods :
#
# 1) Use the CHANGE MASTER TO command (fully described in our manual) -
#    the syntax is:
#
#    CHANGE MASTER TO MASTER_HOST=<host>, MASTER_PORT=<port>,
#    MASTER_USER=<user>, MASTER_PASSWORD=<password> ;
#
#    where you replace <host>, <user>, <password> by quoted strings and
#    <port> by the master's port number (3306 by default).
#
#    Example:
#
#    CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306,
#    MASTER_USER='joe', MASTER_PASSWORD='secret';
#
# OR
#
# 2) Set the variables below. However, in case you choose this method, then
#    start replication for the first time (even unsuccessfully, for example
#    if you mistyped the password in master-password and the slave fails to
#    connect), the slave will create a master.info file, and any later
#    change in this file to the variables' values below will be ignored and
#    overridden by the content of the master.info file, unless you shutdown
#    the slave server, delete master.info and restart the slaver server.
#    For that reason, you may want to leave the lines below untouched
#    (commented) and instead use CHANGE MASTER TO (see above)
#
# required unique id between 2 and 2^32 - 1
# (and different from the master)
# defaults to 2 if master-host is set
# but will not function as a slave if omitted
#server-id       = 2
#
# The replication master for this slave - required
#master-host     =   <hostname>
#
# The username the slave will use for authentication when connecting
# to the master - required
#master-user     =   <username>
#
# The password the slave will authenticate with when connecting to
# the master - required
#master-password =   <password>
#
# The port the master is listening on.
# optional - defaults to 3306
#master-port     =  <port>
#
# binary logging - not required for slaves, but recommended
#log-bin

# Point the following paths to different dedicated disks
#tmpdir = /tmp/
#log-update = /path-to-dedicated-directory/hostname

# Uncomment the following if you are using BDB tables
#bdb_cache_size = 4M
#bdb_max_lock = 10000

# Uncomment the following if you are using InnoDB tables
innodb_data_home_dir = /var/lib/mysql/
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /var/lib/mysql/
innodb_log_arch_dir = /var/lib/mysql/
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
innodb_buffer_pool_size = 16M
innodb_additional_mem_pool_size = 2M
# Set .._log_file_size to 25 % of buffer pool size
innodb_log_file_size = 5M
innodb_log_buffer_size = 8M
innodb_log_files_in_group = 2
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50

# The safe_mysqld script
[safe_mysqld]
err-log=/var/lib/mysql/mysqld.log

[mysqldump]
character-sets-dir = latin1
default-character-set = latin
quick
max_allowed_packet = 16M

[mysql]
character-sets-dir = latin1
default-character-set = latin1
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

[isamchk]
character-sets-dir = latin1
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[myisamchk]
character-sets-dir = latin1
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[mysqladmin]
character-sets-dir = latin1
default-character-set = latin1

[mysqlcheck]
character-sets-dir = latin1
default-character-set = latin1

[mysqlimport]
character-sets-dir = latin1
default-character-set = latin1

[mysqlshow]
character-sets-dir = latin1
default-character-set = latin1

[myisampack]
character-sets-dir = latin1

[mysqlhotcopy]
interactive-timeout
Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

jubilee

Der Client - Eintrag in der my.cnf gilt m.M. nach nur für den shell-Klienten nicht aber für phpMyAdmin.
In phpMyAdmin kannst Du den Charset auch einstellen und zwar auf der Startseite, bevor Du eine Datenbank ausgewählt hast. Das ist zumindest bei neueren Varianten von phpMyAdmin der Fall.

Ansonsten gebe mir einmal zugang zu dem phpMyAdmin-rontend.
Lass die Einstellungen in der my.cnf mal so stehen.
MfG

Mecki

#16
Ich habe dir eine PN geschickt.

Edit: Ich muss mir mal eben Kippen holen*g
Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

Mecki

@Jubilee,

hast Du schon mal reingeschaut? Ich glaube ich muss einen Befehl für php über die Konsole eingeben, ich weiß nur noch nicht genau wie  :gruebel:

http://www.rootforum.de/forum/viewtopic.php?t=40275&highlight=charactersetclient

LG
Mecki
Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

jubilee

Hab gerade einmal die Daten für die Mysql-Verbindung im phpMyAdmin eingestellt und die
Tabelle gezogen. Sieht doch alles i.O. aus :
Zitat--
-- Tabellenstruktur für Tabelle `nuke_modules_comments`
--

DROP TABLE IF EXISTS `nuke_modules_comments`;
CREATE TABLE IF NOT EXISTS `nuke_modules_comments` (
  `tid` int(11) NOT NULL auto_increment,
  `pid` int(11) NOT NULL default '0',
  `id` int(11) NOT NULL default '0',
  `date` datetime default NULL,
  `name` varchar(60) collate latin1_german1_ci NOT NULL default '',
  `email` varchar(60) collate latin1_german1_ci default NULL,
  `url` varchar(60) collate latin1_german1_ci default NULL,
  `host_name` varchar(60) collate latin1_german1_ci default NULL,
  `subject` varchar(85) collate latin1_german1_ci NOT NULL default '',
  `comment` text collate latin1_german1_ci NOT NULL,
  `score` tinyint(4) NOT NULL default '0',
  `reason` tinyint(4) NOT NULL default '0',
  `module` varchar(255) collate latin1_german1_ci NOT NULL default '',
  PRIMARY KEY  (`tid`),
  KEY `tid` (`tid`),
  KEY `pid` (`pid`),
  KEY `sid` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_german1_ci AUTO_INCREMENT=1 ;

--
-- Daten für Tabelle `nuke_modules_comments`
--

Mecki

@Jubilee,

ich verstehe das nicht, wenn ich die Tabelle ziehe sieht die so aus.

--
-- Tabellenstruktur für Tabelle `nuke_modules_comments`
--

CREATE TABLE `nuke_modules_comments` (
  `tid` int(11) NOT NULL auto_increment,
  `pid` int(11) NOT NULL default '0',
  `id` int(11) NOT NULL default '0',
  `date` datetime default NULL,
  `name` varchar(60) collate latin1_german1_ci NOT NULL default '',
  `email` varchar(60) collate latin1_german1_ci default NULL,
  `url` varchar(60) collate latin1_german1_ci default NULL,
  `host_name` varchar(60) collate latin1_german1_ci default NULL,
  `subject` varchar(85) collate latin1_german1_ci NOT NULL default '',
  `comment` text collate latin1_german1_ci NOT NULL,
  `score` tinyint(4) NOT NULL default '0',
  `reason` tinyint(4) NOT NULL default '0',
  `module` varchar(255) collate latin1_german1_ci NOT NULL default '',
  PRIMARY KEY  (`tid`),
  KEY `tid` (`tid`),
  KEY `pid` (`pid`),
  KEY `sid` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_german1_ci AUTO_INCREMENT=1 ;

--
-- Daten für Tabelle `nuke_modules_comments`
--
Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

jubilee

Schau bitte, wenn Du in phpMyAdmin kommst, wie die Variable
Zeichensatz / Kollation der MySQL-Verbindung:
Rechts oben in der Ecke vom phpMyAdmin Startbildschirm eingestellt ist
Dieses Feld muss auf latin_1_german1_ci gesetzt sein !

MfG

Mecki

@Jubilee,

*hmpf ich lösche gleich mal die ganzen temporären Dateien, vielleicht hilft das ja.

Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

Mecki

Hi,

kann es sein, das es am php-Editor liegt?

LG
Mecki
Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

FrankySZ

Hi @ll, hi Mecki,

meinst du die bloeden sonderzeichen?

Zitat... kann es sein, das es am php-Editor liegt? ...

da wuerd ich einfach mal ja sagen, habe das gleiche Phaenomen im normalen texteditor, aber mit Ultraedit siehts perfekt aus ....

eigentlich solltest du noch einige Einstellungen dazu in deinem Editor finden bzw machen koennen ....
greets Franky

Mecki

Oh man,

da nerve ich tagelang rum und dann liegt es teilweise am Editor. Ich habe gerade Ultraedit getestet, damit funzt es super. Kann mir jemand einen kostenlosen Editor empfehlen?

Dank an Jubilee und Franky  ;)
Nicht behindert zu sein, ist kein Verdienst, sondern ein Geschenk, das uns jederzeit genommen werden kann.

FrankySZ


Hi @ll, Hi Mecki,

der Proton sieht imho noch ganz gut aus ... hier der Link:

http://www.meybohm.de/

die Version 3.2 is freeware, wie es mit der neuen aussieht ka.... ansonsten gibts da noch etliche threads zu hier im forum ...

greets Franky

RiotheRat

Na jut ... dann werf ich auch noch einen Kanditaten in's Rennen ... "Notepad++"

http://notepad-plus.sourceforge.net/de/site.htm

Free, schnell, effizient ... und hat neben dem was "alle" bieten ein paar ganz "nette" Features ...


  • Klammerhervorhebung
  • Suche mit regulären Ausdrücken
  • Dateiübergreifende Suche

RtR
Unaufgeforderte PNs & Emails werden ignoriert

Erst wenn die letzte Zeile Code verhunzt, der letzte Server gehackt und der letzte Script-Kidde befriedigt ist, erst dann, werdet Ihr feststellen, dass Nuke nicht sicher ist...