2015-12-16 34 views
7

Niedawno zaktualizowałem do wersji MySQL 5.7 i próbowałem uruchomić replikację z wersji master 5.6. Jednak replikacja nie powiedzie się z następującym błędem:Importowanie MySQL: Nie można pobrać obiektu geometrii z danych wysłanych do pola GEOMETRY

Error 'Cannot get geometry object from data you send to the GEOMETRY field' on query. 

Okazuje się, że dzieje się tak również podczas próby importowania danych z mysqldump. struktura tabeli jest następująca:

CREATE TABLE `locations` (
    `location_id` int(10) unsigned NOT NULL AUTO_INCREMENT, 
    `country_id` int(10) unsigned NOT NULL, 
    `name` varchar(100) CHARACTER SET utf8 NOT NULL, 
    `locations_type_id` int(11) unsigned NOT NULL, 
    `parent_id` int(11) unsigned DEFAULT NULL, 
    `importance` decimal(3,2) NOT NULL DEFAULT '1.00', 
    `lat` decimal(10,7) DEFAULT NULL, 
    `lng` decimal(10,7) DEFAULT NULL, 
    `radius` decimal(6,3) DEFAULT NULL, 
    `polygon` polygon DEFAULT NULL, 
    PRIMARY KEY (`location_id`), 
    KEY `name` (`name`,`locations_type_id`,`parent_id`,`lat`,`lng`), 
    KEY `locations_type_id` (`locations_type_id`), 
    KEY `name_2` (`name`(8)), 
    KEY `country_id` (`country_id`) 
) ENGINE=InnoDB DEFAULT CHARSET=latin1; 

Wydaje mi się, że import próbuje wstawić niektórych danych binarnych w polu wielokąta, ale w uczciwości nie mam pojęcia, jak tego dokonać.

Wszelkie pomysły?

+1

Dałem ci plus na ten ... jakiekolwiek szczęście? Mam ten sam problem: Nie mogę pobrać obiektu geometrii z danych, które wysyłasz do pola GEOMETRY – jbg

+1

Musiałem przejść na wersję MySQL 5.6, aby ją usunąć – peterstarling

+0

Można zaimportować do 5,6 przez cały dzień, bez problemów ... ale 5.7 to nogo . – Trees4theForest

Odpowiedz

0

Jeśli możesz ponownie uruchomić mysqldump, spróbuj dodać opcję --hex-blob, aby wszystkie dane binarne były eksportowane jako zrzut heksadecymalny.