PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : MySQL + mysqldump



beijo
14.09.07, 10:43
hallo,

da wenn ich die mysqldb von server1 in /var/lib/mysql/NewDienst kopiert habe und in server2 /var/lib/mysql/NewDienst eingesetzt habe er mir immer den fehler gebrach hat:


070913 16:50:11 [ERROR] /usr/sbin/mysqld: Can't find file: './NewDienst/p.frm' (errno: 13)

habe ich jetzt per mysqldump befehl die db exportiert von server1 und bei server2 aufgespielt


mysqldump -u martin -p NewDienst > /root/sql_martin

jetzt nur noch bei server2 per phpmyadmin einen user angelegt namens martin mit den nötigen rechten und dann die sql_martin bei server2 aufgespielt über


mysql -u martin -p < /root/sql_martin


jetzt bin ich in phpmyadmin gegangen und: wunderbar die db mit tabellen exsistiert, bringt mir keine Fehlermeldung mehr wenn ich sie anschauen will, etc pp

Jetzt ist das Problen nur wenn ich die php datei aufruf und er connecten soll kommen 3 fehlermeldungen:

fehlermeldung 1


Warning: setlocale() [function.setlocale]: Passing locale category name as string is deprecated. Use the LC_* -constants instead. in /var/www/apache2-default/interna/dp.php3 on line 51


inhalt line51


setlocale("LC_TIME", "de_DE");


fehlermeldung 2


Warning: mysql_num_fields(): supplied argument is not a valid MySQL result resource in /var/www/apache2-default/interna/dp.php3 on line 86


inhalt line86


$spalten = mysql_num_fields($result);


fehlermeldung 3


Warning: mysql_field_name(): supplied argument is not a valid MySQL result resource in /var/www/apache2-default/interna/dp.php3 on line 116


inhalt line116


$felder[$spalte] = mysql_field_name($result, $spalte);


Hat jmd eine Idee wie ich das fixen kann ?

(die permissions etc sind eigentlich auch die richtigen, kann mit den fehlermeldungen nur nichts anfangen)

marce
14.09.07, 10:49
Die Versionen (MySQL, php) sind gleich und auch mit den gleichen Optionen gebaut?

beijo
14.09.07, 11:08
Hallo,

danke für deine schnelle Antwort. Die MySQL und die PHP sind komplett verschieden (Server1 wurde vor 6 Jahren eingerichtet, Server2 mach ich momentan)

Server1:
MySQL: 3.21.33b
Apache/1.3.9 (Unix) Debian/GNU PHP/3.0.12

Server2:
MySQL: 5.0.32
Server: Apache/2.2.3 (Debian) PHP/5.2.0-8+etch7

marce
14.09.07, 11:17
Ok: MySQL über verschiedene Versionen geht nur über Export/Import, nicht direktes Kopieren - hast Du ja schon selbst herausgefunden.

php über verschiedene Versionen an sich geht, es gibt aber ein paar Funktionen, die sich anders verhalten - da wirst Du also wohl um debugging und umprogrammieren nicht herum kommen...

beijo
14.09.07, 11:20
na toll, ich bin nur der dumme zivi der hier das system aktualisieren sollte und hab aber keine ahnung von php programieren *kotz

scheinen ja nur diese 3 funktionen probleme zu bereiten, gibt es evtl einfach befehle die die ersetzen ? kann ja nämlich auch sein dass der befehl sich nur im namen, nicht aber der syntax und benutzung etc geändert hat über die jahre?

marce
14.09.07, 11:32
Naja, bei (1) steht's ja dabei - und bei den anderen beiden müsstest Du anhand der Doku von php mal vergleichen...

beijo
14.09.07, 11:46
juhu habs jetzt hinbekommen dass er auf die db connecten kann etc. sehr komische strange sache...

die einzige fehlermeldung die ich nur net wegbekommen hab ist:


Passing locale category name as string is deprecated. Use the LC_* -constants instead.


wenn mir da jetzt noch weiterhelfen kannst bist mein held ;)

beijo
14.09.07, 11:54
danke hab schon,

hab mir die manuel angeschaut: http://www.php.net/manual/de/function.setlocale.php
und den befehl:

setlocale("LC_TIME", "de_DE");

umgeschrieben in:

setlocale(LC_TIME, 'de_DE');


Jetzt bringt er mir keine Fehlermeldung mehr


THX

cane
14.09.07, 12:45
na toll, ich bin nur der dumme zivi der hier das system aktualisieren sollte und hab aber keine ahnung von php programieren *kotz

Natürlich hast du die Migration erst getestet bevor du sie auf dem Produktivsystem begonnen hast :)

mfg
cane