Nervige Fehlermeldung und Gebeepe

Irgendwelche Probleme mit XAMPP für Windows? Dann ist hier genau der richtige Ort um nachzufragen.

Nervige Fehlermeldung und Gebeepe

Postby kegiro » 23. June 2005 16:12

Moin,

ich habe ein Perlskript, daß meine MySQL Datenbank mit Werten befüllt, das ganze läuft als Konsolenskript. Jedes Mal bei einem DB-Zugriff fängt der Rechner an zu piepen (dieses System Piepen, nicht aus dem Lautsprecher). Folgende Fehlermeldung (oder besser Warnung, denn das Skript wird ja übersetzt und ausgeführt) tritt auf:

Code: Select all
File 'C:\mysql\\sharecharactersets\?.conf' not found (Errcode: 2)
Character set '#48' is not a compiled character set and is not specified in the 'C:\mysql\\share\charsets\Index' file


1. Natürlich ist es besser, den Fehler zu beheben und so die Ursache zu beseitigen. Weiß jemand, wie das geht bzw. ist dieser Fehler bekannt? Ich habe schon unter dem Pfad nachgeschaut, hat aber nix gebracht.

2. Das Gebeepe geht meinen Kollegen mittlerweile auf die Nerven :? , mit der Warnung kann ich schon leben, aber wie schalte ich das Piepen oder diese Warnungen aus ? Die Perlskripts laufen nicht im Debugmodus.

Anscheinend ist die Fehlermeldung nicht nur bei mir :
http://community.apachefriends.org/f/viewtopic.php?t=12075&highlight=sharecharactersets+conf

Vielen Dank,
Flo
kegiro
 
Posts: 7
Joined: 05. May 2005 22:32

Postby deepsurfer » 23. June 2005 16:44

http://forum.perl.de/bb/viewtopic.php?t=2924&

Letzter Eintrag, vielleicht hilft der dir was.

Generell hängt es damit zusammen das dein Script auf dem MySQL zugreift, diesen (wie du ja berichtest) mit Daten füllt.
Diese Füllung wird unter bestimmten Vorraussetzungen ja auch erfüllt, aber MySQL findet da einen Fehler, entweder übergibt dein Script einen falschen CHARSET oder keinen.

Desweiteren ist im XAMPP nur ein rudimentäres PERL enthalten, downloade dir das PERL-Addon für deine XAMPP-Version herunter.
chirio Deep
Wie sagte einst der MCP aus Tron auf dem Bildschirm zu schreiben Pflegte
" ... end of communication ... "
User avatar
deepsurfer
AF Moderator
 
Posts: 6440
Joined: 23. November 2004 10:44
Location: Cologne
Operating System: Win-XP / Win7 / Linux -Debian

Postby kegiro » 23. June 2005 17:28

Hi
danke für die schnelle Antwort.

Zunächst
Desweiteren ist im XAMPP nur ein rudimentäres PERL enthalten, downloade dir das PERL-Addon für deine XAMPP-Version herunter.


Ist schon installiert und läuft bereits.

Das MySQL Addon gibts leider (noch) nicht oder habs nicht gefunden.

aber MySQL findet da einen Fehler, entweder übergibt dein Script einen falschen CHARSET oder keinen.


Es übergibt keinen, soweit ich weiß. Hängt das mit den Feldern TYPE oder COLLATION zusammen ? Die COLLATION sind alle auf latin_1_general...
Was muß ich dann bei den Aufrufen noch hinzufügen ?

Die Webskripte laufen alle wunderbar, ohne Fehler.

Wie gesagt, ich kann mit der Meldung leben, solange sie "stumm" bleibt. Gibt es irgendeine Möglichkeit diesen Systempiep ohne Lötkolben zum Schweigen zu bringen ... :wink: ?

Flo
kegiro
 
Posts: 7
Joined: 05. May 2005 22:32

Postby deepsurfer » 24. June 2005 17:21

latin_1_general...
Was muß ich dann bei den Aufrufen noch hinzufügen ?


Starte mal den phpmyadmin von xampp und erstelle mal eine test-db, die mit der koalition-auswahl des phpmyadmin zusammenhängt...

mach dann ein dump und lies dir den dump-text mal durch, ich hab die genauen kaltionsnamen nicht im kopf daher diesen vorschlag der vorgehensweise.

Daraus dann dein Script dementsprechend angleichen (kann ja auch nur am namen leigen)

Vielleicht wäre es sogar gut wenn du den Teil deines scriptes, wo die Befüllung der Daten mit Koalition steht, hier mal postest.
Vielleicht sehen die PHP/MySQL Gurus hier einen Fehler und können direkt eine Ausbesserung mitteilen.
--------------------

Das Systempiepen könntest du damit abschalten indem du den internen Lautsprecher im Gehäuse vom Motherboad abziehst (ist nur ein stecker, aber vorher Markieren wohin er genau kommt damit man später nicht suchen muss). Nachteil an dieser Aktion, wenn wirklich mal Systemfehler vorliegen dann hörst du diese nicht, auch nicht den berühmten Piepser beim Booten. (Nachdem er das RAM getestet hat und auf das HD-Seeking geht.

Ansonsten würde mir nur noch einfallen dem MySQL selber über einen Konsolen eintrag bescheid zu geben das er keine Fehlerpieps machen soll.
(Könnte in der MySQL install (debug) Anleitung stehen, ist aber jetzt theorie von mir.
chirio Deep
Wie sagte einst der MCP aus Tron auf dem Bildschirm zu schreiben Pflegte
" ... end of communication ... "
User avatar
deepsurfer
AF Moderator
 
Posts: 6440
Joined: 23. November 2004 10:44
Location: Cologne
Operating System: Win-XP / Win7 / Linux -Debian

Postby kegiro » 29. June 2005 12:54

Hi deep,
vielen Dank schon mal für die gutemn tips, ich bekomme es aber leider immer noch nicht weg. MySQL Doku scanne ich gleich mal, den Lautsprecher deaktivieren geht bei diesem Rechner leider nicht:

mach dann ein dump und lies dir den dump-text mal durch, ich hab die genauen kaltionsnamen nicht im kopf daher diesen vorschlag der vorgehensweise.

Daraus dann dein Script dementsprechend angleichen (kann ja auch nur am namen leigen)


Der dump sieht bei mir so aus:

Code: Select all
-- phpMyAdmin SQL Dump
-- version 2.6.1
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Jun 29, 2005 at 01:46
-- Server version: 4.1.10
-- PHP Version: 5.0.3
--
-- Database: `test`
--

-- --------------------------------------------------------

--
-- Table structure for table `compile_log`
--

CREATE TABLE `compile_log` (
  `compile_log_id` int(11) NOT NULL auto_increment,
  `compile_status` varchar(255) collate latin1_general_ci NOT NULL default '',
  `compile_time` datetime NOT NULL default '0000-00-00 00:00:00',
  `compile_err_msg` varchar(255) collate latin1_general_ci NOT NULL default '',
  `target_id` int(11) NOT NULL default '0',
  PRIMARY KEY  (`compile_log_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=13 ;

-- --------------------------------------------------------

--
-- Table structure for table `cw_target`
--


etc etc ... mehr Tabellen


Wie bringe ich dann das
Code: Select all
COLLATE=latin1_general_ci

in meine DB Zugriffen unter ?


Code: Select all
use DBI;

my $DB_NAME = "test";
my $DB_DSN = "DBI:mysql:database=$DB_NAME";
my $DB_USER = "root";
my $DB_PASSWD = "";

my @tabelle;

my $dbh = DBI->connect($DB_DSN, $DB_USER, $DB_PASSWD) or die "Fehler bei Datenbankverbindung: $!";

# *************** Select sequence **************************
$table = "sequence";
$query{$table} = "SELECT * FROM sequence ORDER BY seq_id";
my $Abfrage_seq = $dbh->prepare($query{$table});
$Abfrage_seq->execute();
push(@tabelle,$table);
$Abfrage{$table} = $Abfrage_seq;

[ ...]

$dbh->disconnect;

[ ... Ausgabe für Browser, im DOS Skript entfernt...]
print "Content-Type: text/html\n\n";
print '<html>';
print '<head>';

[Ausgabe]

print "</body>";
print "</html>";


Vielen Dank,

flo
kegiro
 
Posts: 7
Joined: 05. May 2005 22:32


Return to XAMPP für Windows

Who is online

Users browsing this forum: No registered users and 48 guests