Nafanya
NoDeny
Старожил
Карма: 1
Offline
Сообщений: 459
|
|
« Ответ #30 : 18 Декабря 2016, 02:28:13 » |
|
какой есть. Но хотелось бы исправить.
Поправил однако.
|
|
|
Записан
|
Кому то Бог дал ручки, а кому то - грабельки.
|
|
|
sever
Пользователь
Карма: 1
Offline
Сообщений: 82
|
|
« Ответ #31 : 20 Декабря 2016, 09:42:28 » |
|
Сегодня столкнулся с такой же проблемой. Перенёс базу и сам nodeny+ (старой версии как и база) через scp на новый сервак. И при добавлении пользователя вылазят ошибки, тралала... нет дефолтового значения.. и так в нескольких таблицах. Я думаю что зависит от версии mysql, т.к. на новом железе версия 5.6, на старом 5.5 Проблема решилась выключением режима mysql "Strict Mode" sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" Плюс 2 команды в mysql SET @@GLOBAL.sql_mode= ''; SET @@SESSION.sql_mode= ''; Абоненты теперь создаются нормально, без ошибок. Может кому поможет.
|
|
|
Записан
|
|
|
|
Nafanya
NoDeny
Старожил
Карма: 1
Offline
Сообщений: 459
|
|
« Ответ #32 : 20 Декабря 2016, 19:59:47 » |
|
Я решил эту проблему запросами в мускуле таким образом: mysql -u root --password='hardpass'
alter table `users` modify swport int;
alter table `users_trf` modify submoney float;
alter table `users_trf` modify traf1 bigint;
alter table `users_trf` modify traf2 bigint;
alter table `users_trf` modify traf3 bigint;
alter table `users_trf` modify traf4 bigint;
alter table `users_trf` modify test tinyint;
alter table `data0` modify _mac tinyint; Потому, что после исправления одной ошибки, появлялась следующая. У меня тоже была старая версия базы.
|
|
|
Записан
|
Кому то Бог дал ручки, а кому то - грабельки.
|
|
|
Tooreagen
|
|
« Ответ #33 : 11 Сентября 2017, 13:32:38 » |
|
Подыму свою старую тему с той же проблемой. После обновления появилась та же проблема что и в первом топике. Со структурой разобрался, там где нужно по дефолту 0 поставил его. Учетка создается, платежи удаляются нормально. Осталось только разобраться с проведением наличного платежа. В дебаге показывает вот что: Out of range value for column 'balance' at row 1
{ 'param' => [ 150, 1 ], 'sql' => 'UPDATE admin SET balance=balance+(?) WHERE id=?' }; UPDATE admin SET balance=balance+('150') WHERE id='1' и Table 'nodeny.X2017_9_11' doesn't exist
{ 'param' => [ 412 ], 'sql' => 'SELECT time FROM X2017_9_11 WHERE uid=? AND `in`>0 AND `out`>0 ORDER BY time DESC' }; SELECT time FROM X2017_9_11 WHERE uid='412' AND `in`>0 AND `out`>0 ORDER BY time DESC Таблицы X2017_9_11 вообще не обнаружил вБД Это то что выделяется красным. Помогите кто знает.
|
|
|
Записан
|
|
|
|
Efendy
|
|
« Ответ #34 : 11 Сентября 2017, 14:01:42 » |
|
ALTER TABLE users CHANGE `balance` `balance` float(10,2) NOT NULL DEFAULT '0.00'; А отсутствие таблицы X2017_9_11 говорит скорее всего о том, что модуль сбора трафика не запущен, но как это влияет на создание учетки??
|
|
|
Записан
|
|
|
|
Tooreagen
|
|
« Ответ #35 : 11 Сентября 2017, 14:07:25 » |
|
Никак не влияет, учетки создаются, я подправил структуру согласно текущему bill.sql Эта таблица смотрю во всех платежах присутствует. Сделал как вы сказали, ничего не поменялось: Out of range value for column 'balance' at row 1
{ 'sql' => 'UPDATE admin SET balance=balance+(?) WHERE id=?', 'param' => [ 150, 1 ] }; UPDATE admin SET balance=balance+('150') WHERE id='1' Почему-то обращение идет к таблице admin,так и должно быть? Кстати бонусные и безналичные платежи проводятся нормально
|
|
|
Записан
|
|
|
|
Efendy
|
|
« Ответ #36 : 11 Сентября 2017, 14:10:45 » |
|
Сори, моя невнимательность (только прилетел, стараюсь быстро все разгрести) - нужно изменить поле "баланс" у админов, а не у пользователей: ALTER TABLE admin CHANGE `balance` `balance` float(10,2) NOT NULL DEFAULT '0.00';
|
|
|
Записан
|
|
|
|
Tooreagen
|
|
« Ответ #37 : 11 Сентября 2017, 14:13:06 » |
|
Ура!Спасибо получилось. А то что я проделал это с users ?
|
|
|
Записан
|
|
|
|
Efendy
|
|
« Ответ #38 : 11 Сентября 2017, 14:22:34 » |
|
ничего не должно было измениться, только если у тебя балансы у юзеров были больше 10 миллионов
|
|
|
Записан
|
|
|
|
md5
NoDeny
Старожил
Карма: 0
Offline
Сообщений: 256
|
|
« Ответ #39 : 29 Августа 2018, 12:19:06 » |
|
у меня такая же проблема только с чистой базой show create table users;
| users | CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(64) NOT NULL DEFAULT '', `passwd` varchar(64) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, `grp` tinyint(4) unsigned NOT NULL DEFAULT '0', `contract` tinytext NOT NULL, `contract_date` int(10) unsigned NOT NULL DEFAULT '0', `state` enum('off','on') NOT NULL DEFAULT 'on', `balance` float(10,2) NOT NULL DEFAULT '0.00', `limit_balance` float(6,2) NOT NULL DEFAULT '0.00', `block_if_limit` tinyint(4) NOT NULL DEFAULT '0', `modify_time` int(11) NOT NULL DEFAULT '0', `fio` tinytext NOT NULL, `discount` tinyint(4) NOT NULL DEFAULT '0', `cstate` int(11) NOT NULL DEFAULT '0', `cstate_time` int(10) unsigned NOT NULL DEFAULT '0', `comment` varchar(8192) NOT NULL DEFAULT '', `lstate` tinyint(4) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), UNIQUE KEY `name` (`name`), KEY `state` (`state`) ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 |
Проделанное выше пробовал
|
|
|
Записан
|
|
|
|
cojiict
|
|
« Ответ #40 : 29 Августа 2018, 14:07:28 » |
|
|
|
|
Записан
|
|
|
|
md5
NoDeny
Старожил
Карма: 0
Offline
Сообщений: 256
|
|
« Ответ #41 : 29 Августа 2018, 14:11:57 » |
|
describe data0; +--------------+---------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+---------------------+------+-----+---------+----------------+ | id | bigint(20) unsigned | NO | PRI | NULL | auto_increment | | uid | int(10) unsigned | NO | MUL | NULL | | | _adr_street | varchar(255) | NO | MUL | | | | _adr_house | varchar(255) | NO | MUL | | | | _adr_room | varchar(255) | NO | MUL | | | | _adr_telefon | varchar(255) | NO | MUL | | | +--------------+---------------------+------+-----+---------+----------------+ 6 rows in set (0.00 sec)
Server version: 5.6.40 Source distribution
|
|
|
Записан
|
|
|
|
cojiict
|
|
« Ответ #42 : 29 Августа 2018, 14:28:50 » |
|
Повний лог з дебага, будь ласка. ревізія 528?
|
|
|
Записан
|
|
|
|
md5
NoDeny
Старожил
Карма: 0
Offline
Сообщений: 256
|
|
« Ответ #43 : 29 Августа 2018, 14:40:53 » |
|
Повний лог з дебага, будь ласка. ревізія 528?
да последняя ревизия
|
|
|
Записан
|
|
|
|
cojiict
|
|
« Ответ #44 : 29 Августа 2018, 14:56:09 » |
|
Повний лог з дебага, будь ласка. ревізія 528?
да последняя ревизия Певно в чистій базі не може виконати процедуру: select max(id)+1 as id from users; так як немає жодного запису. спробуй створити будь якого користувача в users через sql
|
|
|
Записан
|
|
|
|
|