Открытое и свободное

Блог о Linux, Open Source и больших корпорациях

Перенос базы MySQL

March 16th, 2008 · No Comments
1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...

Настало время переходить на новый хостинг. Вы конечно же делаете бакап своей любимой базы, после чего со спокойной душой покидаете старого хостера. Но когда наступает время импорта базы данных на новый сервер, появляются проблемы. Ваша база отображается непонятно как, и все русские буквы выглядят как много-много букв D, точек и процентов. Что делать?
Не паниковать. Такое бывает не так уж и редко, просто вы раньше с этим не сталкивались. Дело в различных версиях MySQL и кодировках.
По умолчанию большинство не-российских хостеров выставляют кодировку в latin1, в то время как современные веб-приложения пишут в utf8. Возникает двойное перекодирование символов. Его можно решить.
Проще всего сделать так:
1. В каком-нибудь редакторе посмотреть на дамп базы (это обычный текстовой файл) и найти в начале строки наподобие “Server version: 4.1.18″. Теперь вы знаете версию MySQL сервера на исходном сервере.
2. Найти в дампе строку наподобие “CREATE DATABASE `base1` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;”. Теперь вы знаете кодировку.
3. Остается зайти на новый сервер БД с помощью PhpMyAdmin, выставить кодировки в найденные, и произвести импорт, при необходимости установив совместимость с прошлой версией MySQL.
Но еще лучше следить за тем, что именно выставляется в базах с самого начала. Теперь-то вы уже знаете, что это позволяет сэкономить кучу времени ;)

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google
  • e-mail
  • Slashdot
  • Technorati
  • YahooMyWeb
  • Furl
  • MyShare
  • Socialogs

Tags: Uncategorized

0 responses so far ↓

  • There are no comments yet...Kick things off by filling out the form below.

Leave a Comment