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

Помогите Подключение к бд.

Тема в разделе "Разработка плагинов для новичков", создана пользователем AdMiRaLL, 10 окт 2014.

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

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

    Баллы:
    68
    Skype:
    xxxpro100stasxxx
    Имя в Minecraft:
    AdMiRaLLL
    Как правильнее работать с бд?
    Подключаться к бд при включении плагина, по необходимости брать необходимые данные. Отключаться при выключении сервера.
    Подключаться к бд когда заходит игрок(например), брать его данные, отключаться сразу же
    Можно ли оставлять бд открытой на долгую сессию?
    И не затратно ли при каждом входе игрока коннектиться к бд
     
  2. Хостинг MineCraft
    <
  3. Reality_SC

    Reality_SC Старожил Пользователь

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    Подключаться при onEnable, отключаться в onDisable. Причём, в параллельном потоке. Открытую да, конечно.
    При входе игрока только делать запрос того, что тебе нужно.
     
  4. Автор темы
    AdMiRaLL

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

    Баллы:
    68
    Skype:
    xxxpro100stasxxx
    Имя в Minecraft:
    AdMiRaLLL
    А вот ещё вопрос.
    Когда я беру данные из базы данных запросом, они будут такие какими они являются на момент запроса, или какими они были в момент, когда я коннектился?
     
  5. fhntv24

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

    Баллы:
    88
    конечно-же на момент запроса. Это почти нереально , когда есть 200+ коннектов хранить инфу при конекте , а не при запросе ( представляем себе базу данных размером 20 гигабайт , и 200 подключений ... Это 4 терабайта памяти , друзья мои. )
     
  6. Автор темы
    AdMiRaLL

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

    Баллы:
    68
    Skype:
    xxxpro100stasxxx
    Имя в Minecraft:
    AdMiRaLLL
    А меня может отключить от бд, если я долго не делал к ней запросов, ну что-то типа сессия кончилась?
     
  7. fhntv24

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

    Баллы:
    88
    Смотря от настройки самой БД , но может. Может инет оффнуть , и т.д. Вообще , можно проверять работает ли соеденение. Если нет - подключаться опять. Ток опять же , в отдельном потоке
     
  8. Jampire

    Jampire Старожил Пользователь

    Баллы:
    173
    Skype:
    jampire-h
    Имя в Minecraft:
    Jampire
    как уже сказали выше - коннектимся при включени плагины, дисконектимся при отключении. но для безопасности при каждом запросе проверяем, действительно ли соединение и если нет - подключаемся снова.

    Отправлять запросы в базу обязательно в отдельном потоке, ибо в некоторых случаях (лаг базы или еще чего) - сервер будет висеть ровно столько, сколько длится лаг со стороны базы.
     
  9. Hilgert

    Hilgert Старожил Пользователь

    Баллы:
    123
    Skype:
    mixa2258
    Имя в Minecraft:
    Hilgert
    https://github.com/MrHilgert/Time2Bonus/blob/master/ru/hilgert/t2b/SQLUtil.java

    Использование:
    Код:
    SQLUtils sql = new SQLUtils("хост", "логин", "пароль", 3306(порт), "База данных");
    sql.exec("Выполнить SQL запрос");
    ResultSet rs = sql.get("Например SELECT * FROM `authme`");
    //Далее делаешь что хочешь с rs
    sql.close();
     
  10. Jampire

    Jampire Старожил Пользователь

    Баллы:
    173
    Skype:
    jampire-h
    Имя в Minecraft:
    Jampire
    отличный метод работы с базой, ага. в основном потоке)
    решается не сложно, но то что в тех исходниках - точно лучше не использовать
     
  11. Hilgert

    Hilgert Старожил Пользователь

    Баллы:
    123
    Skype:
    mixa2258
    Имя в Minecraft:
    Hilgert
    ну дык, потоки я за вас сделать должен чтоль? :cry:
     
  12. fhntv24

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

    Баллы:
    88
    а кто же еще? Мы чтоли? Мы юзеры знаем что твоя библа мега 228 крутая и она уже быстра как можно. (п.с. реально , для нубов надо ... некоторые нубы засунули в отдельный поток и .... ну короче , у них нифига оно не в отдельном )
     
  13. almohax

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

    Баллы:
    68
    Имя в Minecraft:
    almohax
    твой код не работает исправь ошибки
     

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