Při záložní a obnovovací operaci mysql dat nastal problém: po použití sqlyog pro zálohování dat a následném obnovení dat na jiném serveru byl "'" oddělovač sežrán kvůli varbinárnímu poli v jedné z tabulek (kvůli problému binárního kódování byl oddělovač uvozovek považován za součást dat), takže data nemohla být normálně importována.
Některé textové nástroje byly použity pro zpracování, ale nebyly úspěšné, některé z nich bylo možné rozpoznat, ale automaticky upravovaly binární kódovaná data, a některé vkládaly jiná binární data, což vedlo k tomu, že stále nečitelná.
Zvažte tedy jiné metody: přečtěte data, napište SQL příkaz a pak ho importujte. Konkrétní metody jsou:
(1) Použít HEX-funkci ke čtení dat při exportu a převést binární data do hexadecimálního řetězce;
vyberte HEX(binField) z testTable;
(2) Použít funkci UNHEX k převodu hexadecimálního řetězce do binární databáze importu dat během importu;
vložit do testTable binField hodnoty(UNHEX(@hexstr));
Následující kód demonstruje funkčnost HEXu a UNHEXU:
SELECT HEX('toto je testovací str') a výsledek dotazu je: 746869732069732061207465737420737472 SELECT UNHEX('746869732069732061207465737420737472'), a výsledek dotazu je: toto je testovací str
Můžete také přímo přečíst hexadecimální znak, přidat do řetězce předponu 0x: SELECT 0x746869732069732061207465737420737472, výsledek dotazu je: toto je testovací str
Navíc můžete použít binární metody importu a exportu pro zálohování a obnovu dat. Tady se o tom nediskutuje.
|