Перейти к содержимому

DeepNet

ASP24.com.ua - Большой выбор моделей от BDCOM для создания идеальной сети. Звоните! 050-374-0066
Фото

Объединение баз данных двух биллингов Ubilling

ubilling mysql

  • Чтобы отвечать, сперва войдите на форум
12 ответов в теме

#1 mac

mac

    Первая Кровь

  • Маглы
  • ФишкаФишка
  • 83 Сообщений:

Опубликовано 13 Ноябрь 2017 - 16:26

Естественно, ip сети и города - разные, версии Ubilling - одинаковые.
Собственно, как это сделать максимально просто и безопасно?
 
То, до чего сам додумался - это использовать "Модуль Миграция 2"
Для это планирую сделать экспорт нужных полей из базы данных с помощью запроса

Spoiler

По sql запросу вопрос прежде всего к уважаемому nightfly : оттуда ли (таблицы, поля) я беру значения?

Fibertool

Изменено: mac, 14 Ноябрь 2017 - 15:35

  • 0

LanTorg.com

#2 l1ght

l1ght

    Вампир

  • Сitizens
  • ФишкаФишкаФишкаФишкаФишкаФишка
  • 1 808 Сообщений:
  • Пол:Мужчина
  • Город:Запорожье

Опубликовано 13 Ноябрь 2017 - 17:36

с такими вопросами....

ручками всё перенесите, вы ж наебнете себе всё без понимания что вы и куда суете

 

имена табличек похожи на правду, пробуйте на виртуалках, сдампите себе БД с первого и пробуйте перенести данные со второго

попутно проверяя всё ли в БД занеслось как надо и не ахуел ли старгейзер от таких манипуляций


Изменено: l1ght, 13 Ноябрь 2017 - 17:39

  • 0

#3 mac

mac

    Первая Кровь

  • Маглы
  • ФишкаФишка
  • 83 Сообщений:

Опубликовано 13 Ноябрь 2017 - 18:00

Да, конечно на виртуалке испытаю сначала.

Просто глубоко не копал, что и где лежит.

Имена полей и таблиц - вроде как адекватны назначению.

Но могут же быть, типа, legacy, и не использоваться в новых версиях убилинга

В частности, смущает таблица users (оч много столбцов)


  • 0

NG Optics

#4 l1ght

l1ght

    Вампир

  • Сitizens
  • ФишкаФишкаФишкаФишкаФишкаФишка
  • 1 808 Сообщений:
  • Пол:Мужчина
  • Город:Запорожье

Опубликовано 13 Ноябрь 2017 - 18:12

Да, конечно на виртуалке испытаю сначала.

Просто глубоко не копал, что и где лежит.

Имена полей и таблиц - вроде как адекватны назначению.

Но могут же быть, типа, legacy, и не использоваться в новых версиях убилинга

В частности, смущает таблица users (оч много столбцов)

users это то с чем работает старгейзер

 

почитайте FAQ, посмотрите видео в вики есть ссылочки

думаю станет понятнее, а вообще неиспользуемых табличек у нас нет

все важны и все нужны, стартовая позиция собрать все логины и IP из таблички users

это то по чему есть связь по всем остальным таблицам

соотвественно бабло (cash), кредит, имя тарифа, всё остальное живет в других табличках


  • 0

#5 Pautiina

Pautiina

    Пролетал Мимо

  • Маглы
  • Фишка
  • 28 Сообщений:
  • Пол:Мужчина
  • Город:Харьков
  • Интересы:Системное администрирование

Опубликовано 13 Ноябрь 2017 - 20:59

Уже есть готовый SQL запрос выборки всех необходимых данных. Сейчас немного подкорректирую под миграцию 2 и вперед, если Вы желаете так переносить. А вообще вариантов масса.


  • 0

#6 Pautiina

Pautiina

    Пролетал Мимо

  • Маглы
  • Фишка
  • 28 Сообщений:
  • Пол:Мужчина
  • Город:Харьков
  • Интересы:Системное администрирование

Опубликовано 13 Ноябрь 2017 - 21:14

Уже есть готовый SQL запрос выборки всех необходимых данных. Сейчас немного подкорректирую под миграцию 2 и вперед, если Вы желаете так переносить. А вообще вариантов масса.

 

Ну что-то типа такого:

            SELECT 
                    `users`.`login`, `ip`, `mac`, `Tariff`,  `Cash`,  `Credit`, `CreditExpire`, 
                    `cityname`, `streetname`, `buildnum`, `entrance`, `floor`, `apt`,
                    `phones`.`phone`, `mobile`, `emails`.`email`, 
                    concat(`cityname`, ' ', `streetname`, ' ', `buildnum`, IF(`apt`, concat('/',`apt`), '')) AS `fulladress`,
                    `realname`.`realname`, `contract`, `AlwaysOnline`, `Down`, `Passive`                   
            FROM `users` LEFT JOIN `nethosts` USING (`ip`)
                    LEFT JOIN `realname` ON (`users`.`login`=`realname`.`login`)
                    LEFT JOIN `address` ON (`users`.`login`=`address`.`login`)
                    LEFT JOIN `apt` ON (`address`.`aptid`=`apt`.`id`)
                    LEFT JOIN `build` ON (`apt`.`buildid`=`build`.`id`)
                    LEFT JOIN `street` ON (`build`.`streetid`=`street`.`id`)
                    LEFT JOIN `city` ON (`street`.`cityid`=`city`.`id`)
                    LEFT JOIN `phones` ON (`users`.`login`=`phones`.`login`)
                    LEFT JOIN `contracts` ON (`users`.`login`=`contracts`.`login`)
                    LEFT JOIN `emails` ON (`users`.`login`=`emails`.`login`)

  • 0

#7 mac

mac

    Первая Кровь

  • Маглы
  • ФишкаФишка
  • 83 Сообщений:

Опубликовано 14 Ноябрь 2017 - 09:24

l1ght, Pautiina, большое спасибо за советы и решения!

Pautiina, в вашем запросе в

`users`.`login`, `ip`,

пропущен `password`. Правильнее будет

`users`.`login`, `password`, `ip`,

Изменено: mac, 14 Ноябрь 2017 - 10:57

  • 0

#8 nightfly

nightfly

    Дьявол

  • Сitizens
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 4 420 Сообщений:
  • Пол:Мужчина
  • Город:wild west

Опубликовано 14 Ноябрь 2017 - 11:45

Там еще данные по платежам, начислениям АП, нетхосты и куча потрохов других есть. Если логины юзеров, сети, и прочее такое не перекрываются, то в принципе, можно пробовать переносить данные в лоб. Проблема будет, только с адресами из "город-улица-дом", так как там куча связей по id, и хорошо бы писать для этого какой-то "заселятор" на пхп. Ненавижу такие штуки.
  • 0

Причинять добро и наносить справедливость | Ubilling - резня в дельфинарии, бобры негодуют | Шапочки из фольги оптом.


#9 mac

mac

    Первая Кровь

  • Маглы
  • ФишкаФишка
  • 83 Сообщений:

Опубликовано 14 Ноябрь 2017 - 13:05

Ничего (логины юзеров, сети, и прочее такое) не перекрывается.

Т.к. сначала данные были в одном биллинге, потом их разделили на 2 (ломать - не строить).

Дальше они жили своей жизнью. И теперь из-за автоматизации платежей (opayz) их нужно объединить.

Nightfly, Ваше мнение понял, заселятор я не осилю, поэтому - или миграция, или вручную.


  • 0

#10 nightfly

nightfly

    Дьявол

  • Сitizens
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 4 420 Сообщений:
  • Пол:Мужчина
  • Город:wild west

Опубликовано 14 Ноябрь 2017 - 13:19

Nightfly, Ваше мнение понял, заселятор я не осилю, поэтому - или миграция, или вручную.

Ну по идее, какая-то из миграций должна пытаться угадывать, чего там делать с адресами. Точно не уверен - отродясь ими не пользовался. Кстати экспорт в ЦСВ-шку вроде был в "мастере отчетов".

Остальное да, можно переносить в лоб, тупо табличками.


  • 0

Причинять добро и наносить справедливость | Ubilling - резня в дельфинарии, бобры негодуют | Шапочки из фольги оптом.


#11 Pautiina

Pautiina

    Пролетал Мимо

  • Маглы
  • Фишка
  • 28 Сообщений:
  • Пол:Мужчина
  • Город:Харьков
  • Интересы:Системное администрирование

Опубликовано 14 Ноябрь 2017 - 14:37

 

l1ght, Pautiina, большое спасибо за советы и решения!

Pautiina, в вашем запросе в

`users`.`login`, `ip`,

пропущен `password`. Правильнее будет

`users`.`login`, `password`, `ip`,

Пусть будет так :)


  • 0

#12 mac

mac

    Первая Кровь

  • Маглы
  • ФишкаФишка
  • 83 Сообщений:

Опубликовано 16 Ноябрь 2017 - 17:28

Появились новые вопросы по "Миграции 2"

1. Когда создавать недостающие тарифы - до или после миграции?

2. В wiki есть рекомендация выключить stargazer перед миграцией. Но тогда перестает работать ubilling. Это как раз тот случай, когда нужно использовать опцию NOSTGCHECKPID ?


  • 0

#13 nightfly

nightfly

    Дьявол

  • Сitizens
  • ФишкаФишкаФишкаФишкаФишкаФишкаФишкаФишка
  • 4 420 Сообщений:
  • Пол:Мужчина
  • Город:wild west

Опубликовано 16 Ноябрь 2017 - 19:14

1. По идее до.
2. Да.
  • 0

Причинять добро и наносить справедливость | Ubilling - резня в дельфинарии, бобры негодуют | Шапочки из фольги оптом.






Также с меткой «ubilling, mysql»

1 пользователей читают эту тему

0 members, 1 guests, 0 anonymous users

Local.blog МЕТА - Украина