Архив метки: MySQL/MariaDB

Nextcloud: запуск в Docker Compose на Debian с SSL от Let’s Encrypt

27 ноября 2019
 

 Недавно потестировал Nexcloud вообще, см. NextCloud: установка сервера на Debian с NGINX и PHP-FPM, и клиента на Arch Linux — в целом понравилось, работает — можно попробовать мигрировать с Dropbox на него. Сегодня запустим Nextcloud полностью в Docker, на сервере с Debian 10 в Digital Ocean. К серверу подключён отдельный диск, на котором будут все… Читать далее »

AWS RDS: SQLSTATE[22001] — Data too long for column в MariaDB 10.2

8 августа 2019
 

 Имеется PHP-приложение с бекендом AWS RDS MariaDB. На версии 10.0 работало нормально, но после миграции на 10.2 — в логах начали появляться ошибки: PDOException: SQLSTATE[22001]: String data, right truncated: 1406 Data too long for column ‘name’ at row 1 in /data/projects/projectname/vendor/yiisoft/yii2/db/Command.php:1290 Вариант первый — это просто сменить тип колонки с VARCHAR на LONGTEXT, например так:… Читать далее »

AWS: MariaDB RDS — kill: You are not owner of thread

14 мая 2019
 

 Имеется AWS RDS с MariaDB. Ошибка и решение не специфичны ни для AWS RDS, ни для MariaDB. При попытке убить процесс — RDS сообщает, что: Решение — использовать процедуру mysql.rds_kill(): Вызываем её: Для Azure MySQL имеется аналогичная процедура mysql.az_kill(). Готово.

TestRail: сброс пароля admin

13 мая 2019
 

 Имеется установленный TestRail, к которому потеряли пароля админа, а опция Reset Password сообщает, что «Email sending failed» — хотя почта настроена, и работает — пользователи письма получают. Лог /var/www/testrail.example.com/logs/log-2019-05-13.php ничего внятного не сообщает, поэтому поступим проще — обновим пароль прямо в базе данных. Создаём бекап базы: Подключаемся к серверу, находим базу данных TestRail: Пользователи и… Читать далее »

TestRail: QA Test Case Management система — установка на Linux

22 марта 2019
 

 TestRail — Test Case Management Software for QA and Development Teams. Собственно — этого достаточно для описания) Ниже — описание процесса его установки на Debian с NGINX, Let’s Encrypt, PHP-FPM, MariaDB и Exim. Домашняя страница проекта — www.gurock.com/testrail Документация по установке — тут>>>. Устанавливать будем на AWS EC2. LEMP и SSL Логинимся на сервер: Обновляем… Читать далее »

NextCloud: установка сервера на Debian с NGINX и PHP-FPM, и клиента на Arch Linux

17 марта 2019
 

 После новости о том, что Dropbox вводит ограничение на 3 устройства — я таки созрел для установки NextCloud. Огорчил не сам лимит — у меня три устройства и используются, плюс оно повлияет только на новых пользователей (старые будут ограничены их текущим количеством устройств, а вот за дополнительные — придётся платить), сколько вообще введение подобных ограничений.… Читать далее »

C: libmysqlclient — примеры работы с MySQL API

29 января 2019
 

 Давно не писал на С (последний раз — почти год тому, см. What is: Linux namespaces, примеры PID и Network namespaces). Немного за ним заскучал, ибо язык интересный и заставляет местами поломать голову, потому решил немного освежить память. Ниже приводятся примеры работы с сервером MySQL/MariaDB на С, используя API из библиотеки libmysqlclient. Примеры взяты из поста MySQL… Читать далее »

AWS RDS: PDOException: SQLSTATE[08004] [1040] Too many connections

26 декабря 2018
 

 В Sentry начали сыпаться ошибки вида: PDOException: SQLSTATE[08004] [1040] Too many connections in /data/projects/project/vendor/yiisoft/yii2/db/Connection.php:687 Stack trace: #0 /data/projects/project/vendor/yiisoft/yii2/db/Connection.php(687): PDO->__construct(‘mysql:host=stag…’, ‘user’, ‘pass’, NULL) Для всех инстансов RDS MariaDB максимальное кол-во подключений считается по формуле {DBInstanceClassMemory/12582880}. Т.е. в нашем случае это тип db.m4.xlarge с 16ГБ памяти, следовательно: Для указания значения лимита используется переменная max_connections: Проверяем значение напрямую на сервере: Ну… Читать далее »

MySQL: Exception message: (1049, \»Unknown database ‘mysql’\»)

11 сентября 2018
 

 Баловался с MySQL, и перед переустановкой сервера удалил директорию /var/lib/mysql (намеренно). После этого переустановил MySQL: Но при попытке выполнить действие — Ansible сообщает: FAILED! => {«changed»: false, «msg»: «unable to connect to database, check login_user and login_password are correct or /root/.my.cnf has the credentials. Exception message: (1049, \»Unknown database ‘mysql’\»)»} И в самом деле —… Читать далее »

Prometehus: MySQL exporter

7 августа 2018
 

 Ещё одна задача по мониторингу — проверять доступ к серверу баз данных. Краткая заметка просто для примера. Используем prometheus/mysqld_exporter. Подключаемся к серверу БД, добавляем пользователя: Задаём ему права доступа: Запускаем експортер: Проверяем метрики: Добавляем в Ansible шаблон Compose файла: … mysql_exporter: image: prom/mysqld-exporter networks: — prometheus-client ports: — 9104:9104 environment: — DATA_SOURCE_NAME={{ mysql_monitoring_user }}:{{ mysql_monitoring_pass }}@({{… Читать далее »