Биллинговая система Nodeny

Главная категория => Nodeny 50 => Тема начата: serojperoj от 03 Января 2012, 17:15:09



Название: Разделение дополнительной базы
Отправлено: serojperoj от 03 Января 2012, 17:15:09
Привет и С Новым Годом всех.

версия Nodeny 50.32 , ОS Freebsd 7.

Решил разделить "расширенную статистику трафика". Но не знаю с чего начать.

взял новый компютер , поставил FreeBSD 7, дальше мускул. Вот только незнаю что сним делать?
В настройках админки NoDeny поменять IP и все? Операции => Настройки => Базы Данных => "Адрес сервера с дополнительной базой данных" поменять на только что созданный комп?

надо ли создать database bill ? или он сам все сделает и таблици тоже создадит?

заранее спасибо.


Название: Re: Разделение дополнительной базы
Отправлено: serojperoj от 05 Января 2012, 14:41:58
на новом ПК создал базу с именем bill

Код:
create database bill;

CREATE USER 'bill_kernel'@'%' IDENTIFIED BY 'mypass';
GRANT USAGE ON *.* TO 'bill_kernel'@'%' IDENTIFIED BY 'mypass'
GRANT SELECT,INSERT,UPDATE,DELETE ON `bill`.* TO 'bill_kernel'@'%'

с основной базы захожу на новый ПК

Код:
mysql -h 10.0.0.2 -u bill_kernel -p
нормально заходит

в Операции => Настройки => Базы Данных => Адрес сервера с дополнительной базой данных меняю на 10.0.0.2

дальше в Статистике - "Ошибка соединения с mysql на сервере 10.0.0.2!"

что не так, куда копать?


Название: Re: Разделение дополнительной базы
Отправлено: Elisium от 05 Января 2012, 15:34:16
Вот тебе тема:
http://forum.nodeny.com.ua/index.php?topic=1124.msg12123#msg12123
Наслаждайся )))

п.с. Да, и не заимей дурную привычку, пжст, сделав чтото НЕ ОТПИСАТЬСЯ о решении на форуме.

п.п.с. ЕСЛИ заведется у тебя с двумя/тремя базами, скинь пжст список таблиц, ЗАДЕЙСТВОВАНЫХ в каждой из баз.
Ну и глянь же, актуальные ли данные ВО ВСЕХ базах, что будет, если основная база отвалится итд.
Что будет, если с основной базы удалить таблицы авторизаций, а оставить их только в БД авторизаций ? Будет ли работать?  ))

За полный краш-тест тебе будут "вэльмы вдячни".
Раз уж занялся данным вопросом...


Название: Re: Разделение дополнительной базы
Отправлено: 0xbad0c0d3 от 05 Января 2012, 17:23:18
Цитировать
create database bill;

CREATE USER 'bill_kernel'@'%' IDENTIFIED BY 'mypass';
GRANT USAGE ON *.* TO 'bill_kernel'@'%' IDENTIFIED BY 'mypass'
GRANT SELECT,INSERT,UPDATE,DELETE ON `bill`.* TO 'bill_kernel'@'%'
А ничего, что стата коннектится под другим юзером (по дефолту. И я сомневаюсь, что в этом случае не дефолт оО)?
P.S. из nodeny.cfg.pl было бы не плохо увидеть переменную $user


Название: Re: Разделение дополнительной базы
Отправлено: serojperoj от 05 Января 2012, 19:47:25
Цитировать
P.S. из nodeny.cfg.pl было бы не плохо увидеть переменную $user

угу ты прав. там под юзером bill_www. Вот только это чтение, а записывает-то под юзером bill_kernel ?

Думаю за хвост надо брать когда коллектор отправляет все это чудо в базу и поменять, чтоб запихивал в только-что созданную базу.

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

строка из backup_nodeny.sh 
Код:
grep -v '^[stuvxyz]2' | grep -v 'traf_info' | grep -v '^Tables' |

теперь вопрос как найти или у кого спросить?=)


Название: Re: Разделение дополнительной базы
Отправлено: Efendy от 05 Января 2012, 20:45:46
Цитировать
P.S. из nodeny.cfg.pl было бы не плохо увидеть переменную $user

угу ты прав. там под юзером bill_www. Вот только это чтение, а записывает-то под юзером bill_kernel ?
Код:
cat nodeny.cfg


Название: Re: Разделение дополнительной базы
Отправлено: serojperoj от 06 Января 2012, 14:44:31
Код:
[root@server /usr/local/nodeny]# [b]cat nodeny.cfg[/b]
#=======================================================================#
#                                                                       #
#               NoDeny - конфигурационный файл ядра                     #
#                                                                       #
#=======================================================================#


$Db_name        = 'bill';               # имя базы данных NoDeny
$Db_user        = 'bill_kernel';        # логин
$Db_pw          = 'mypass';        # пароль

$Db_server      = 'localhost';          # Сервер основной базы nodeny

$Db_server_2    = 'localhost';          # Сервер дополнительной базы nodeny,
                                        # может совпадать с $Db_server
$Db_server_a    = 'localhost';          # Сервер с базой авторизации,
                                        # может совпадать с $Db_server
$Db_mysql_connect_timeout = 6;          # Таймаут на соединение с сервером БД

$Smtp_server    = '127.0.0.1';          # smtp сервер, через него будет выслано сообщение администрации о критической ошибке.
                                        # В письме будет указан отправитель nodeny@nodeny.dp.ua

$Verbose        = 0;                    # 2 - детальный лог, 1 - подробный лог, 0 - обычный (рекомендуется)

1;


Название: Re: Разделение дополнительной базы
Отправлено: 0xbad0c0d3 от 06 Января 2012, 15:04:20
что-то мне подсказывает, что это sat.cfg
нужно cat nodeny.cfg.pl


Название: Re: Разделение дополнительной базы
Отправлено: Efendy от 06 Января 2012, 15:38:51
что-то мне подсказывает, что это sat.cfg
нужно cat nodeny.cfg.pl
тока без pl, просто nodeny.cfg - ядро берет адреса баз данных из этого файла. Скорее всего, там тоже все 3 базы на localhost


Название: Re: Разделение дополнительной базы
Отправлено: 0xbad0c0d3 от 06 Января 2012, 15:48:37
Пардонте, ошибсо :-[


Название: Re: Разделение дополнительной базы
Отправлено: serojperoj от 06 Января 2012, 16:57:28
кстати у меня сеть на двух сателитах

кусок от nodeny.cfg.pl
Код:
#NoDeny Config File

$VER_cfg = 50.32;
$Nodeny_dir = '/usr/local/nodeny';
$Log_file = '/usr/local/nodeny/nodeny.log';
$Script_adm = '/cgi-bin/adm/adm.pl';
$Script_stat = '/cgi-bin/stat.pl';
$img_dir = '/i';
$Adm_img_f_dir = '/usr/local/www/apache22/data/i/upload';
$Adm_img_dir = '/i/upload';
$db_server = 'localhost';
$db_server2 = 'localhost';
$db_auth_server = 'localhost';
$db_conn_timeout = 4;
$db_conn_timeout2 = 4;
$db_name = 'bill';
$user = 'bill_www';
$pw = 'mypass';
$Passwd_Key = 'mypass1';
$Reload_Nets_Time = 0;
@cl_nets = (
 ''
);
%Collectors = (
 '3' => '10.0.0.5-Satelit2 ipcad',
 '2' => '10.0.0.4-Satelit1 ipcad',
);