2013-06-17 3 views
0

Недавно мне нужно было перенести мой сайт и все его содержимое. Я поддержал все и вручную распаковал все на новом хостинге. Очень утомительный процесс, мягко говоря.escape-символ mysql import

Однако после переезда я обнаружил, что база данных Wordpress была опрокинута, и я только что понял проблему.

Текстовый символ Юникода (u8217) используется в некоторых текстовых частях сайта. По какой-то неизвестной причине этот символ заставляет вставки заканчиваться у этого символа. Я знаю это, потому что фрагменты текста перед этим символом успешно вставлены, а все остальное опущено. (Я редактировал этот пост, потому что в моем первоначальном посте я думал, что это был виновником был ' апостроф, но это юникода характер )

Команда, которую я использовал для резервного копирования является:

mysqldump --no-create-db --add-drop-table --all-databases -u [username] –p[password] -h [host] > backup.sql 

команда, я использую для импорта является:

mysql -u [username] -p[password] -h [host] < backup.sql 
+1

Вам не нужно ничего скрывать - все необходимые символы автоматически экранируются. Вместо этого вам нужно приложить немного больше усилий для расследования того, что, безусловно, «сломалось». Были ли у вас какие-либо сообщения об ошибках при импорте? Если нет - все символы были экранированы должным образом, и ваша проблема находится где-то в другом месте. –

+0

Хороший момент, извините, я больше не объяснял. После импорта строка с 'Today's 'оставила отрезок текста. Таким образом, предположение заключалось в том, что вставка SQL заканчивается. Но нет, никаких сообщений об ошибках (если они не регистрируются где-то, о чем я не знаю). – ryvantage

+1

Откуда вы знаете, что «остальное отрезано»? Где вы это видите? В вашей заявке? Как вы могли сказать, что это резервное копирование mysql, а не ваше приложение? Почему бы не увидеть ** прямо в файле дампа **? –

ответ

0

Хотя это до сих пор загадка для меня, потому что команда mysql SSH не получали методом каких-либо ошибок, я по крайней мере был в состоянии решить эту проблему путем копирования/папа sting содержимое файла дампа в sql-окно phpMyAdmin и его выполнение. Вставки прошли очень хорошо, поэтому проблема оказалась в команде mysql исключительно.

Поиск в google не вызвал каких-либо перспективных результатов в проблему, поэтому, надеюсь, эта тема будет полезна кому-то еще. Большое спасибо «@Your Common Sense» за то, что вы задали важные вопросы, чтобы показать мне, что проблема не в том, что я думал, что это было изначально.