[ПРЕОДОЛЕНО] проблема перехода с MySQL на MariaDB на NAS QNAP

Главные вкладки

Аватар пользователя winny63 winny63 23 сентября 2016 в 22:35

В качестве сервера разработки использую NAS QNAP TS-121, на котором под управлением Linux (до последнего времени относительно удачно) бегали Apache + MySQL 5.1.x и взаимодействовали с D6 и D7.
Так как для установки (например, для экспериментов и освоения) D8 нужна MySQL 5.5.х и сдуру понадеявшись на "вменяемость" изделия солидной фирмы (как мне казалось), отсутствия каких-либо "рекомендаций" в документации, захотел поставить параллельно MariaDB 5.5, надеясь зацепить ее на другой порт etc.
Но не тут-то было!
1. MariaDB подменила собой MySQL, причем и без предупреждения - без каких-либо "очевидных" возможностей возврата (файлы "старого" приложения на сервере остались). Имевшиеся базы и работа с ними через phpMyAdmin подхватились без проблем.
2. Сервер на D6 прекрасно работает без каких-либо проблем, даже без изменений в настройках базы о которых ниже.
3. Все серверы на D7 перестали работать, выдавая кучу ошибок (см. приложенный файл). Прочистка кэшей не помогла.
4. Google по выдаваемым ошибкам выдает одну рекомендацию - поднять величину параметра сервера базы данных max_allowed_packet до величины > 16 MB. Действительно, в файле настройки my.cnf этот параметр имел величину 1 MB. Изменил его на 64M, в том числе не без труда поборов страсть QNAP'а к замене при перезагрузке настроечных файлов на эталонные копии. Не помогло!
5. D8 при установке выдает примерно тот-же букет ошибок.

Какие будут соображения по преодолению этой проблемы?

P.S. Вариант возврата к старой системе управления базами данных, конечно, прорабатывается, правда горячая линия QNAP попросила написать письменный запрос на их инженеров, так что, похоже, это не самая простая задача.

ВложениеРазмер
Иконка простого текстового файла Файл с текстом ошибок746 байт

Комментарии

Аватар пользователя winny63 winny63 24 сентября 2016 в 9:50

Здесь, ИМХО, дело не в Linux'е, а в каких-то "прослойках" (драйверах и т.п.) или их настройках - сайт на D6 ведь работает без проблем, а все остальное, а том числе и phpMySQL глючит по-чёрному...

Аватар пользователя winny63 winny63 24 сентября 2016 в 18:37

Увы, прошлось восстанавливать status quo прошивкой старой версии микропрограммы NAS, т.к. в последних прошивках MySQL заменен на MariaDB.
Для тех, кто внезапно, наступит на те же грабли, опишу последовательность восстановления (рекомендованную производителем):
0. Имелся NAS QNAP TS-121 с микропрограммой версии 4.2.2 с установленными MariaDB и (вроде бы совместимой с базой версией) phpMyAdmin 4.4.
1. Сделайте резервную копию файлов. По возможности - снимите дампы имеющихся баз данных (для которых это удастся сделать, у меня по некоторым базам выдавалось "таблицы не найдены" при их наличии).
2. Деинсталируйте MariaDB.
3. Скачайте с сайта производителя файл прошивки версии 4.1.0
4. Через модуль обновления установите прошивку. Согласитесь с предупреждением о том, что согласны на понижение версии, содержащем, в том числе, предупреждения о возможных потерях файлов и т.п. У меня все прошло нормально.
5. После обновления микропрограммы и перезагрузке убедитесь, что сервер базы данных запущен и при необходимости установите phpMyAdmin, имеющийся в списке приложений. У меня все восстановилось до начальной точки.
6. Продолжайте работать на восстановленной конфигурации очень тщательно и осторожно подходя к установке принципиально других баз данных в замен работающей.

Аватар пользователя bsyomov bsyomov 24 сентября 2016 в 20:21

Mariadb не то чтобы принципиально другая база. И в нормальной конфигурации на сервере работает с ней и 7 и 8.
Что было накручено с настройками производителем на NAS этом, что так всё было плохо можно только гадать. Smile
Кстати, проблема могла быть даже не с настройками, а с библиотеками и биндингами PDO mysql.

Аватар пользователя dashiwa dashiwa 24 сентября 2016 в 19:56

На какой операционной системе все это было
Немного непонятно как пакеты линкуса могут относится к обновления железа сервера...
Просто любопытно..так как возможности работать с серверами не было.только VDS/VPS

Аватар пользователя winny63 winny63 28 сентября 2016 в 22:03

Это все-таки практически сервер.
Камни - Intel или ARM (в моем случае - arm)
Работает на Linux.
Во flash-памяти хранится ядро и минимум дистрибутивов, в том числе - web-сервер и база данных и много еще чего (в том числе и в виде "фирменных" дистрибутивов). В старых прошивках СУБД MySQL, в новых уже MariaDB. web-сервер - apache, но похоже есть вариант с ngix (ну или народ сам ставит как-то).
При запуске диск и флешка монтируются к корню, что-то устанавливается с флешки на диск и там остается до принудительной деинсталяции и неспециалист в тонкостях "что-где-когда" уже не разберется. В том числе, на флеш-дистрибутиве прописан набор файлов конфигурации по умолчанию, которые "перезаписывают" лежащие на виду конфигурационные файлы, в которых правишь какие-либо настройки (но при определенном упорстве найти и поправить эталонные конфиги возможно).
Дополнительный софт ставится в виде специальных пакетов, распространяемых производителем.
Судя по всему, действительно проблема была в "прокладках" между СУБД и php, что-то обновилось, а что-то осталось от старой базы. Процедура на низком не описана в документации вообще, типа "нажмите кнопки и будет вам щастье", ан не всегда так выходит.
Техподдержка очень скупа на словеса (счастье хотя бы в том, что она вообще в стране есть), главный формат ответа "к нас всё так сконфигУрено, чтобы все надежно работало", но увы, не всегда слова совпадают с реальностью...
Увы, времени разбираться пока нет, будем работать на том, что работает.

Аватар пользователя bsyomov bsyomov 5 октября 2016 в 19:55

«Это все-таки практически сервер»
Почти на любой роутер, нынче, можно поставить OpenWRT какой-нибудь, и будет там то же самое, если не лучше. Smile
От сервера это поделие отличается ОЧЕНЬ сильно. И производительностью, и надёжностью, и массой технологий используемых в серверных платформах.
Это обычный домашний NAS и не более того.

Аватар пользователя ivnish ivnish 6 октября 2016 в 6:16

Борис, а что есть сервер? Smile Из википедии: "Сервером называется компьютер, выделенный из группы персональных компьютеров (или рабочих станций) для выполнения какой-либо сервисной задачи без непосредственного участия человека. Сервер и рабочая станция могут иметь одинаковую аппаратную конфигурацию, так как различаются лишь по участию в своей работе человека за консолью."

Я могу запустить apache2 на своём смартфоне и смело назвать его веб-сервером)

Аватар пользователя bsyomov bsyomov 7 октября 2016 в 19:32

Бывает и рабочие станции делают на серверных платформах, и наоборот, и даже, на NAS, или смартфонах запускают веб сервер, или сервер БД.
Но не стоит путать роль исполняемую устройством, и его классификацию как устройства.
После установки апача смартфон останется смартфоном. У него не отрастёт резервный блоки питания, не появится память с коррекцией ошибок, и даже кеша процессору не прибавится, просто он будет исполнять не характерную для себя функцию..
Про NAS всё то же самое...