Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Помогите AuthMe - перенос данных из .db в sql. Кодировка.

Тема в разделе "Помощь", создана пользователем TheMrDanchik, 31 мар 2015.

  1. Автор темы
    TheMrDanchik

    TheMrDanchik Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    TheMrDanchik
    Нужно перенести все аккаунты из auths.db в базу данных, находящуюся на локалхосте.

    Воспользовался скриптом из этой темы. Все бы ничего, но в базе содержатся и русские буквы, т.к. сервер поддерживает соответствующие никнеймы.
    PMA отображает такие имена примерно так: слендер.
    Безымянный.png
    Попытался расшифровать всяко-разно онлайн-декодерами - не особо получается. Например: "�лендер" (CP1252 → UTF-8). Криво отображает то первый символ, то последний.
    При попытке зарегистрироваться на сервере создаётся запись, содержащая в username лишь вопросительные знаки (количество - длина никнейма).
    Безымянный.png
    Если зайти под другим именем, содержащим такое же количество символов, AuthMe начинает кидать ошибки в консоль, а потом и вовсе перестаёт отвечать на запросы (оно и понятно).
    Попытался вручную исправить ячейку username - не помогло: данная запись не используется, поэтому предлагает сервер зарегистрироваться.
    auths.db в кодировке UTF-8. С этим файлом AuthMe абсолютно нормально работает.
    Таблица authme в utf8_general_ci (посоветовали использовать именно такую).

    Собственно, два вопроса:
    1) Как нормально конвертировать и перенести содержимое файла auths.db в БД?
    2) Как сделать нормальное взаимодействие сервера и БД, чтобы можно было использовать имена, содержащие русские буквы?

    Я новичок в работе с SQL, поэтому прошу рассказать как можно подробнее. Спасибо.
     
  2. Хостинг MineCraft
    <
  3. MrBrikster

    MrBrikster Активный участник Пользователь

    Баллы:
    78
    Имя в Minecraft:
    MrBrikster
    Там вообще-то нужно какую-то команду прописать, не помню уже, кажется /authme convertsql[DOUBLEPOST=1427825920,1427825788][/DOUBLEPOST]
    А, вот, вспомнил: /authme convertflattosql
     
  4. Автор темы
    TheMrDanchik

    TheMrDanchik Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    TheMrDanchik
    Данного аргумента не существует. AuthMe 3.5-snapshot[DOUBLEPOST=1428078360,1427990605][/DOUBLEPOST]Апчхи
     
  5. MrTrojan

    MrTrojan Активный участник Пользователь

    Баллы:
    98
    Skype:
    mrtrojan.ru
    Имя в Minecraft:
    MrTrojan
    Странно... у меня есть.
    upload_2015-4-4_14-50-51.png
     
  6. Автор темы
    TheMrDanchik

    TheMrDanchik Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    TheMrDanchik
    Первая проблема была решена следующим образом:
    Заменил AuthMe 3.5 снапшот на стабильный AuthMe 3.4.
    Конвертировал .db в .sql при помощи /authme convertflattosql
    Импортировал содержимое sql в таблицу AuthMe.
    Обратно поставил AM 3.5.
    Теперь в PMA "старые" записи показываются в нужно кодировке.
    Однако вторая проблема актуальна: при регистрации "нового" игрока, в таблице создаётся запись вида "????"
     
  7. MrBrikster

    MrBrikster Активный участник Пользователь

    Баллы:
    78
    Имя в Minecraft:
    MrBrikster
    Лучше вообще запрети русские символы, с этим могут быть проблемы из-за других плагинов.[DOUBLEPOST=1428152282,1428152207][/DOUBLEPOST]
    Если с английскими также, попробуй кодировку БД поменять.
     
  8. Автор темы
    TheMrDanchik

    TheMrDanchik Активный участник Пользователь

    Баллы:
    66
    Имя в Minecraft:
    TheMrDanchik
    С английскими всё в порядке
     

Поделиться этой страницей