ritzmann
Goto Top

PHPMyAdmin Import nicht möglich: Unerwartetes Zeichen

Hallo zusammen

Ich versuche, bis jetzt leider erfolglos, eine MySQL Datenbank mit PHPmyAdmin zu importieren. Beim Importieren erscheint immer eine Fehlermeldung.

1. Unerwartetes Zeichen. (near "" at position 315)  
2. Unerwartetes Zeichen. (near "~" at position 316)  
3. Unerwartetes Zeichen. (near "=" at position 317)  
[..] 

2b63dbd6d88b7bde2a45bc943b779a53

Exportiert wurde die Datenbank so:
mysqldump -u root -p db_name > db_name.sql

Und Importiert wurde diese so:

3ecfa490760ae1e38604fc6f03d29abb

Beim Import wurde darauf geachtet, das "utf-8" ausgewählt ist. Zumindest gehe ich davon aus, dass das richtig ist. Weil wenn ich die db_name.sql mit z.B. Notepad++ öffne steht in Zeile 10:

/*!40101 SET NAMES utf8 */;  

Ob mir da jemand weiterhelfen kann? face-smile

Freundliche Grüsse
Markus

Content-ID: 291397

Url: https://administrator.de/contentid/291397

Ausgedruckt am: 15.11.2024 um 09:11 Uhr

broecker
broecker 20.12.2015 um 11:45:36 Uhr
Goto Top
von einem Windows-System zu einem Linux-Server? - Windows kodiert gerne UTF-16...
Schlüssig und zügig kann man das wohl nur mit einem kleinen Hexdump entscheiden, also auf der Konsole mit hd (mit: man hd die Anleitung) um die Fehlerzeilen herum als Hex und daneben ASCII ausgeben lassen, dann kann man die Kodierung für das konkrete Datenbankfeld erkennen (hier ggf. wieder einstellen).
HG
Mark
114757
114757 20.12.2015 aktualisiert um 17:58:00 Uhr
Goto Top
Moin,
das in deinem File steht das es UTF-8 Daten enthält sagt rein garnichts darüber aus, dass es auch tatsächlich im UTF-8 Encoding auf der Platte gelandet ist.
So wie du die Daten über STDOUT exportiert hast ist das böse wenn deine Shell nicht auf UTF8 Character-Encoding gesetzt ist!
Wenn dann nur so
mysqldump -uroot -p database -r export.dump
Dann wird ein korrekt kodiertes File geschrieben.

Siehe dazu auch folgende Seite wie du es richtig machst:
http://makandracards.com/makandra/595-dumping-and-importing-from-to-mys ...

Gruß jodel32
broecker
broecker 20.12.2015 um 14:55:52 Uhr
Goto Top
@114757: stimmt, das alte Linux wird dann einfach cp437, 850 oder neuer ISO 8859-x haben,
danke, kommt einem bestimmt nochmal unter...
HG
Mark
ritzmann
ritzmann 20.12.2015 um 21:51:41 Uhr
Goto Top
Hallo broecker

Danke für deine Antwort. Das MySQL Dump stammt von einem Linux Debian vServer. MySQL wurde normal via apt-get installiert. Anschliessend wurde da nichts spezielles eingestellt. Auch das System selbst sollte auf UTF-8 arbeiten.

root@1413894585-2:/home/temp# echo $LANG
de_DE.UTF-8

Wie ich mit "hd" die Kodierung herausfinden kann, hab ich jetzt, trotz "man", nicht ganz verstanden. Beziehungsweise: Ich weiß nicht wie ich das Interpretieren kann. Nachfolgend ein par Ausschnitte:

hd -b export.dump
00057460  a3 d8 2a d5 15 a9 de 17  29 f3 5b 6a 67 f5 f1 01  |..*.....).[jg...|
0057460 243 330 052 325 025 251 336 027 051 363 133 152 147 365 361 001
00057470  1b cd 59 f2 27 29 2c 28  32 31 36 2c 27 52 65 66  |..Y.'),(216,'Ref|  
0057470 033 315 131 362 047 051 054 050 062 061 066 054 047 122 145 146
00057480  65 72 72 65 72 73 5f 6b  65 79 77 6f 72 64 42 79  |errers_keywordBy|
0057480 145 162 162 145 162 163 137 153 145 171 167 157 162 144 102 171
00057490  53 65 61 72 63 68 45 6e  67 69 6e 65 5f 34 37 27  |SearchEngine_47'|  
0057490 123 145 141 162 143 150 105 156 147 151 156 145 137 064 067 047
000574a0  2c 31 2c 27 32 30 31 33  2d 30 32 2d 32 35 27 2c  |,1,'2013-02-25',|  
00574a0 054 061 054 047 062 060 061 063 055 060 062 055 062 065 047 054
000574b0  27 32 30 31 33 2d 30 32  2d 32 35 27 2c 31 2c 27  |'2013-02-25',1,'|  
00574b0 047 062 060 061 063 055 060 062 055 062 065 047 054 061 054 047
000574c0  32 30 31 33 2d 30 33 2d  31 38 20 32 32 3a 33 35  |2013-03-18 22:35|
00574c0 062 060 061 063 055 060 063 055 061 070 040 062 062 072 063 065
000574d0  3a 30 37 27 2c 27 78 9c  ad 8e c1 5c 6e c2 30 10  |:07','x....\n.0.|  
00574d0 072 060 067 047 054 047 170 234 255 216 301 134 156 302 060 020
000574e0  44 7f a5 ec 5d 68 d2 d6  c6 c9 d5 b3 8a 78 2f 5b  |D...]h.......x/[|
00574e0 104 177 245 354 135 150 322 326 306 311 325 263 212 170 057 133
000574f0  2d 18 0c 15 6c 35 87 d2  7f 37 a9 e9 51 28 e8 e1  |-...l5...7..Q(..|
00574f0 055 030 014 025 154 065 207 322 177 067 251 351 121 050 350 341
00057500  ed 84 61 37 3c 46 8e c1  20 d5 7b 88 5c 72 e8 60  |..a7<F.. .{.\r.`|
0057500 355 204 141 067 074 106 216 301 040 325 173 210 134 162 350 140
00057510  9c b9 55 5b ee f9 c4 b5  6d aa e3 dd 11 04 86 ce  |..U[....m.......|
0057510 234 271 125 133 356 371 304 265 155 252 343 335 021 004 206 316
00057520  0f 3a 93 66 64 9f 75 86  5c 6e 6d 01 b2 5c 5c 37  |.:.fd.u.\nm..\\7|
0057520 017 072 223 146 144 237 165 206 134 156 155 001 262 134 134 067
00057530  96 74 87 14 44 da 40 44  64 cc cc b3 f6 e4 fa 32  |.t..D.@Dd......2|
0057530 226 164 207 024 104 332 100 104 144 314 314 263 366 344 372 062^C


hd -c export.dump
00045180  b4 f6 b3 ae 05 5c 30 5c  5a 0e 03 c4 27 29 2c 28  |.....\0\Z...'),(|  
0045180   �   �   �   � 005   \   0   \   Z 016 003   �   '   )   ,   (  
00045190  31 39 36 2c 27 52 65 66  65 72 72 65 72 73 5f 75  |196,'Referrers_u|  
0045190   1   9   6   ,   '   R   e   f   e   r   r   e   r   s   _   u  
000451a0  72 6c 42 79 57 65 62 73  69 74 65 27 2c 31 2c 27  |rlByWebsite',1,'|  
00451a0   r   l   B   y   W   e   b   s   i   t   e   '   ,   1   ,   '  
000451b0  32 30 31 33 2d 30 32 2d  31 31 27 2c 27 32 30 31  |2013-02-11','201|  
00451b0   2   0   1   3   -   0   2   -   1   1   '   ,   '   2   0   1  
000451c0  33 2d 30 32 2d 31 31 27  2c 31 2c 27 32 30 31 33  |3-02-11',1,'2013|  
00451c0   3   -   0   2   -   1   1   '   ,   1   ,   '   2   0   1   3  
000451d0  2d 30 32 2d 31 39 20 32  30 3a 30 38 3a 35 32 27  |-02-19 20:08:52'|  
00451d0   -   0   2   -   1   9       2   0   :   0   8   :   5   2   '  
000451e0  2c 27 78 9c 4b b4 32 b4  aa ce b4 d2 35 b4 f6 b3  |,'x.K.2.....5...|  
00451e0   ,   '   x 234   K   �   2   �   �   �   �   �   5   �   �   �  
000451f0  ae 05 5c 30 5c 5a 0e 03  c4 27 29 2c 28 31 39 37  |..\0\Z...'),(197|  
00451f0   � 005   \   0   \   Z 016 003   �   '   )   ,   (   1   9   7  
00045200  2c 27 52 65 66 65 72 72  65 72 73 5f 74 79 70 65  |,'Referrers_type|  
0045200   ,   '   R   e   f   e   r   r   e   r   s   _   t   y   p   e  
00045210  27 2c 31 2c 27 32 30 31  33 2d 30 32 2d 31 32 27  |',1,'2013-02-12'|  
0045210   '   ,   1   ,   '   2   0   1   3   -   0   2   -   1   2   '  
00045220  2c 27 32 30 31 33 2d 30  32 2d 31 32 27 2c 31 2c  |,'2013-02-12',1,|  
0045220   ,   '   2   0   1   3   -   0   2   -   1   2   '   ,   1   ,  
00045230  27 32 30 31 33 2d 30 32  2d 31 39 20 32 30 3a 30  |'2013-02-19 20:0|^C  


hd -d export.dump
001c630   25705   29285   26719   29551   28276   28001   17765   29816
0001c640  27 2c 31 2c 27 32 30 31  33 2d 30 31 2d 33 30 27  |',1,'2013-01-30'|  
001c640   11303   11313   12839   12592   11571   12592   13101   10032
0001c650  2c 27 32 30 31 33 2d 30  31 2d 33 30 27 2c 31 2c  |,'2013-01-30',1,|  
001c650   10028   12338   13105   12333   11569   12339   11303   11313
0001c660  27 32 30 31 33 2d 30 32  2d 30 31 20 32 32 3a 33  |'2013-02-01 22:3|  
001c660   12839   12592   11571   12848   12333   08241   12850   13114
0001c670  32 3a 30 31 27 2c 27 78  9c 2d 8c b1 0e 83 30 0c  |2:01','x.-....0.|  
001c670   14898   12592   11303   30759   11676   45452   33550   03120
0001c680  44 ff c5 3b 12 81 d2 c2  79 ed d2 05 aa aa 3b 32  |D..;....y.....;2|
001c680   65348   15301   33042   49874   60793   01490   43690   12859
0001c690  94 c1 6a a4 5c 22 51 89  21 ca bf 37 a6 19 ec e7  |..j.\"Q.!..7....|  
001c690   49556   42090   08796   35153   51745   14271   06566   59372
0001c6a0  3b f9 4e 50 21 28 4a 1e  e0 3a d0 5d 77 7d 8f 57  |;.NP!(J..:.]w}.W|
001c6a0   63803   20558   10273   07754   15072   24016   32119   22415
0001c6b0  f9 ca 53 26 bf 8c 8f cf  4e 70 08 5b 5a 34 13 0b  |..S&....Np.[Z4..|^C


Ersteres sieht für mich am ehesten Normal aus.

Freundliche Grüsse
Markus
ritzmann
ritzmann 20.12.2015 um 21:54:26 Uhr
Goto Top
Hallo jodel32

Danke für deine Antwort. Habe nun deinen Befehl benutzt um die Datenbank zu exportieren. Leider dasselbe, wie davor. Die Fehlermeldungen beim Import Vorgang sind immer noch vorhanden.

Einzig...

--default-character-set=latin1

... werde ich noch versuchen. Melde mich dann wieder.

Freundliche Grüsse
Markus
LordGurke
LordGurke 20.12.2015 um 22:39:01 Uhr
Goto Top
Es könnte sein, dass da BLOB-Felder enthalten sind (also Binärdaten). Man kann mysqldump per Parameter mitgeben, dass die als HEX exportiert werden - ich glaube "--hex-dump" oder ähnlich. Habe gerade leider kein MySQL zur Hand wo ich das nachsehen kann.
broecker
broecker 21.12.2015 um 08:43:09 Uhr
Goto Top
Die erste Ansicht ist schon völlig ausreichend, eine kompakte Darstellung hätte auch gereicht:
BLOB-Felder sind in den HexDumps trotz der zufälligen Auswahl auch tatsächlich zu sehen, die Kodierung ist aber auch tatsächlich sehr wahrscheinlich UTF-8, da sonst regelmäßig zwischen regulären ASCII-Werten (gerade den nicht-BLOBs) 00-Bytes stünden.
Das Setzen auf latin1 würde es also schlechter machen.
@LordGurke hat da schon recht, den Export wiederholen wäre Best Practice.
Wurde er nach dem Export nochmal mit Editoren geöffnet? die könnten in den BLOBs vielleicht CR oder LF+CR eingefügt haben?
ritzmann
ritzmann 27.02.2016 um 18:08:48 Uhr
Goto Top
Sorry, für die nun mittlerweile verstrichene Zeit. Bin das Problem mittlerweile umgangen. Habe den Export und Import einfach mit der PHP-Software "mysqldumper" erledigt. Hat ohne Zwischenfälle funktioniert.

Trotzdem vielen dank für eure Hilfe!