Страница 1 из 2

SQL_ERROR при попытке редактирования IP POOL

Добавлено: Вт май 07, 2013 10:29 am
Xramovnik
Доброго всем!
Собсно сабж в заголовке темы. ОС CentOS 6.4. Abills 0.55b. IP POOL создается без проблем, только при попытке редактирования возникает ошибка SQL.
В чем может быть проблема?
В логах апача следующее:
FUNCTION abills.INET6_NTOA do not exist at...

Re: SQL_ERROR при попытке редактирования IP POOL

Добавлено: Вт май 07, 2013 11:36 am
~AsmodeuS~

Re: SQL_ERROR при попытке редактирования IP POOL

Добавлено: Вт май 07, 2013 12:01 pm
Xramovnik
Спасибо.
Крайне не хотелось ставить mysql не с репозитория...
Если mysql не обновить еще баги вылезут в процессе работы?

Re: SQL_ERROR при попытке редактирования IP POOL

Добавлено: Вт май 07, 2013 12:30 pm
~AsmodeuS~
мониторинг не будет работать

или подождите следующего обновления там будете возможность и на старой работать

Re: SQL_ERROR при попытке редактирования IP POOL

Добавлено: Вт май 07, 2013 12:36 pm
Xramovnik
Мониторинг важен...
Буду пробовать поставить с пакетов 5.6.
О результатах напишу.

Re: SQL_ERROR при попытке редактирования IP POOL

Добавлено: Ср май 08, 2013 9:55 am
Xramovnik
Итак оборол беду

Для тех кому интересно
Ставится система CentOS 6.4 в минимальной установке, потом:

Код: Выделить всё

yum update

reboot

yum install wget mc expat mod_ssl php libiao php-curl  php-devel php-gd php-imap  perl-Crypt-SSLeay perl-DBI perl-DBD-MySQL perl-Digest-SHA1 php-common ImageMagick-devel perl-Crypt-PasswdMD5.noarch php-intl perl-Digest-MD4 php-idn php-mcrypt libmcrypt

wget http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-client-5.6.11-2.el6.i686.rpm/from/http://cdn.mysql.com/
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-server-5.6.11-2.el6.i686.rpm/from/http://cdn.mysql.com/
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-shared-compat-5.6.11-2.el6.i686.rpm/from/http://cdn.mysql.com/

yum install MySQL-server-5.6.11-2.el6.i686.rpm
yum install MySQL-shared-compat-5.6.11-2.el6.i686.rpm
yum install MySQL-client-5.6.11-2.el6.i686.rpm

service mysql start

На том установка MySQL 5.6.11 все. Дальше сюрпризы с импортом структуры базы данных и созданием пользователя abills. Тут до всего дошел методом тыка, система пишет о всем, что ей не нравится.
Удачи всем в установке

Re: SQL_ERROR при попытке редактирования IP POOL

Добавлено: Чт май 23, 2013 12:17 pm
NiTr0
Вариант решения проблемы:

Код: Выделить всё

diff --git a/Abills/mysql/Nas.pm b/Abills/mysql/Nas.pm
index a0a231e..cde72fe 100644
--- a/Abills/mysql/Nas.pm
+++ b/Abills/mysql/Nas.pm
@@ -347,6 +347,7 @@ sub ip_pools_info {
   my ($id, $attr) = @_;

   my $WHERE = '';
+  my $ipv6field = ($CONF->{IPv6}) ? ', INET6_NTOA(ipv6_prefix) AS ipv6_prefix' : '';

   $self->query2("SELECT id,
       INET_NTOA(ip) AS nas_ip_sip,
@@ -354,8 +355,8 @@ sub ip_pools_info {
       name AS pool_name,
       priority AS pool_priority,
       static,
-      speed AS pool_speed,
-      INET6_NTOA(ipv6_prefix) AS ipv6_prefix
+      speed AS pool_speed
+      $ipv6field
    FROM ippools  WHERE id='$id';",
    undef,
    { INFO => 1 }
diff --git a/Abills/mysql/main.pm b/Abills/mysql/main.pm
index 4f907ba..96c4612 100644
--- a/Abills/mysql/main.pm
+++ b/Abills/mysql/main.pm
@@ -577,7 +577,7 @@ sub changes {
         $CHANGES_LOG   .= "$k $OLD_DATA->{$k}->$DATA{$k};";
         $CHANGES_QUERY .= "$FIELDS->{$k}=INET_ATON('$DATA{$k}'),";
       }
-       elsif ($k eq 'IPV6_PREFIX') {
+       elsif ($k eq 'IPV6_PREFIX' && $CONF->{IPv6}) {
                $CHANGES_LOG   .= "$k $OLD_DATA->{$k}->$DATA{$k};";
                $CHANGES_QUERY .= "$FIELDS->{$k}=INET6_ATON('$DATA{$k}'),";
        }
@@ -975,7 +975,7 @@ sub query_add {
        if ($column eq 'IP' || $column eq 'NETMASK') {
                push @inserts_arr, "$row->{COLUMN_NAME}=INET_ATON('$values->{$column}')";
        }
-       elsif ($column eq 'IPV6_PREFIX') {
+       elsif ($column eq 'IPV6_PREFIX'  && $CONF->{IPv6}) {
                push @inserts_arr, "$row->{COLUMN_NAME}=INET6_ATON('$values->{$column}')";
        }
        else {

Re: SQL_ERROR при попытке редактирования IP POOL

Добавлено: Чт май 23, 2013 1:47 pm
~AsmodeuS~
просто удалите поля которые относятся к v6 и система будет их пропускать

Re: SQL_ERROR при попытке редактирования IP POOL

Добавлено: Чт май 23, 2013 2:30 pm
NiTr0
ip_pools_info - не пропустит. да и не заметил в коде main.pm каких-либо проверок полей на присутствие в базе...

Re: SQL_ERROR при попытке редактирования IP POOL

Добавлено: Чт май 23, 2013 8:10 pm
~AsmodeuS~
функция query_add

на днях дополню описание sql api

Re: SQL_ERROR при попытке редактирования IP POOL

Добавлено: Пн июл 08, 2013 6:37 am
batushkaaa
Dear ~AsmodeuS~,

I got backup for mysql and abills like mysqldump --quick -u root -p test > db_test_20120127.sql from Billing server. Then upload these files (db_abills_20130708.sql and db_mysql_20130708.sql )to new billing server via mysql -u root -p test < db_test_20120708.sql.

The upload process was successful. But I cannot access to new server via web interface and username password was changed. I have tried to access via old server username password and new server username password. But both of them not match to access account.

How to access to new server via web interface ?

BR
Battumur

Re: SQL_ERROR при попытке редактирования IP POOL

Добавлено: Пн июл 08, 2013 7:12 am
~AsmodeuS~
batushkaaa писал(а):Dear ~AsmodeuS~,

I got backup for mysql and abills like mysqldump --quick -u root -p test > db_test_20120127.sql from Billing server. Then upload these files (db_abills_20130708.sql and db_mysql_20130708.sql )to new billing server via mysql -u root -p test < db_test_20120708.sql.

The upload process was successful. But I cannot access to new server via web interface and username password was changed. I have tried to access via old server username password and new server username password. But both of them not match to access account.

How to access to new server via web interface ?

BR
Battumur
please use this forum

viewforum.php?f=7

Re: SQL_ERROR при попытке редактирования IP POOL

Добавлено: Пт июл 26, 2013 5:08 am
AlfaStriker
Кстати, у меня все завелось.
Версию MySQL поставил 5.6.
Правда пришлось все ставить из CSV, и там 0.55 бетка.
А если установить 0.55rc1, выходит старая ошибка SQL Error - бла бла бла.

Re: SQL_ERROR при попытке редактирования IP POOL

Добавлено: Пн авг 19, 2013 10:37 am
AlfaStriker
AlfaStriker писал(а):Кстати, у меня все завелось.
Версию MySQL поставил 5.6.
Правда пришлось все ставить из CSV, и там 0.55 бетка.
А если установить 0.55rc1, выходит старая ошибка SQL Error - бла бла бла.
Заметил странный глюк, почему для установки версии 0.55 нужна именно MySQL версии 5.6.11-2.
Например вот:
Я установил Abills с версией 5.6.13, у меня вылазит глюк SQL error.
Если установить 5.6.11-2, все супер - работает.
Потом обновляешь MySQL до последней 5.6.13 - все ОК.

Вроде в требованиях написано MySQL 5.6 и выше. А нет, есть проблемы.
Не понятка)))

Re: SQL_ERROR при попытке редактирования IP POOL

Добавлено: Пн авг 19, 2013 12:36 pm
AlfaStriker
А если установить MariaDB, будет ли Abills работать с ней?
-------------
Так и не понял с чем связан глюк SQL Error.
Но скоро найду причину. Закономерность найдена!