Category archives: MySQL

Не запускается СУБД MySQL mysql.service: Main process exited, code=exited, status=1/FAILURE

Произошла у меня комичная ситуация. При помощи команды «reboot» перезапустил сервер с ОС Linux Ubuntu и после перезапуска СУБД MySQL перестала запускаться. После выполнения команды «service mysql restart» выводится сообщение: «Job for mysql.service failed because the control process exited with error code. See «systemctl status mysql.service» and «journalctl -xe» for details.» Что делать и как быть? Read more …

Tags: , , , , , , , , ,

Что устанавливать для веб-сервера на чистом выделенном сервере

Итак, арендовали виртуальный или физический выделенный сервер (VPS/VDS) с одной только ОС Linux и теперь пора его настроить, чтобы сделать из него веб-сервер для сайтов интернета. Настройка веб-сервера на чистом выделенном сервере дело не совсем хлопотное, но всё же придётся потратить немного времени.
Read more …

Tags: , , , , , , , , , , , , , , , , , , , , , , ,

Создание пользователя и наделение его правами в СУБД MySQL

Казалось бы тема проще некуда, но, судя по форумам и специализированным сайтам ответов, у многих людей она вызывает вопросы, надо прояснить. Как же создать пользователя в СУБД MySQL и наделить его правами администратора? Разумеется, речь идёт о SQL, т.к. как создавать пользователей через какой-нибудь менеджер БД типа «PhpMyAdmin» или «MySQL Workbench» все конечно знают. Read more …

Tags: , , , , , , , ,

Борьба с ошибкой 1146 «Table `table_name` doesn’t exist when using LOCK TABLES» в СУБД MySQL

Попытался сделать дамп (бэкап) БД через родную для MySQL утилиту mysqldump и получил ошибку:

Got error: 1146: Table `table_name` doesn't exist when using LOCK TABLES

Вместо table_name имя несуществующей таблицы. Т.е. сразу после введения в консоль/терминал команды:

mysqldump --user=root -p db_name > db_name.sql

получаю такую ошибку. Файл дампа создаётся, но он пустой, утилита mysqldump после выдачи этой ошибки перестаёт работать. Read more …

Tags: , , , , , , , ,

Отмена вставки в триггере MySQL

Простая ситуация когда вешаем тригер на вставку данных в таблицу и в этом триггере определяем надо ли вставлять эти данные или нет. В случае с MySQL всё оказалось не просто.

Проблема в том, что отменить запрос в триггере MySQL тривиальным образом нельзя. В той же MS SQL Server есть триггеры INSTEAD OF и достаточно просто прописать в триггере ROLLBACK, что бы отменить вставку, но в MySQL команды транзакций использовать в триггерах нельзя. Read more …

Tags: , , , ,

СУБД не отвечает из-за превышения лимита запросов

При работе с СУБД MySQL столкнулся с проблемой которая повергла меня в ступор ибо я долго не мог понять из-за чего это происходит. Симптомы банальны: СУБД тупо не отвечает на посылаемые ей запросы. При этом никаких ошибок так же не отдаёт и исправно принимает запросы. Т.е. запросы уходят к СУБД а в ответ ничего, совсем ничего. Вот уж не знаешь что и думать в такой ситуации. Разумеется перезагрузка сервера баз данных помогает, но ведь это не выход надо искать причину проблем. Read more …

Tags: , , , , ,

The used table type doesn’t support FULLTEXT indexes

Неприятная ошибка, стоит признать. Случается она обычно при переносе базы данных, при поднятии дампа. Говорит о том, что тип используемой таблицы не поддерживает полнотекстовые (FULLTEXT) индексы. Причин том может быть несколько. Об этом и поговорим. Read more …

Tags: ,

Использование составного ключа в БД

Во многих книжках по проектированию баз данных пишут, что составной уникальный ключ это дело очень редкое и сложное, якобы он бывает нужен в редчайших ситуациях и поэтому вообще знать о нём не обязательно. Read more …

Tags: , , ,

Базовые методы оптимизации базы данных

Решил посвятить этой теме целый отдельный пост на своём блоге т.к. это действительно очень важно, особенно когда речь идёт о высоконагруженных проектах. Безусловно переоценить роль оптимизации базы данных очень сложно, ведь от этого зависит многое и в первую очередь производительность вашего продукта работающего с базой данных. Вообще оптимизации баз данных это целая наука, которой можно посвятить целую книгу, в этом деле есть свои тонкости и нюансы. Обычно оптимизацией БД должен заниматься архитектор базы ещё при создании самой модели таблиц и связей. Т.е. об оптимизации думаем сразу при создании базы. В общем я поведаю о базовых методах распределения нагрузки СУБД. Read more …

Tags: , ,

Полнотекстовый поиск с сортировкой по релевантности на основе SQL запроса в СУБД MySQL

Решил написать на эту тему отдельную статью т.к. думаю, что это будет очень интересно для читателей блога. Естественно я не первый кто описывает данный метод, поэтому на правду в последней инстанции не претендую. Вообще когда данный способ поиска с сортировкой по релевантности стал возможен в СУБД MySQL был большой резонанс, многие об этом писали, в частности в US нете. Действительно способ очень интересный, т.к. предоставляет простейший механизм качественного быстрого релевантного полнотекстового поиска по базе данных. Т.е. вы получаете мощнейшую поисковую систему, которая быстро и не ресурсозатратно ищет различные слова и словосочетания (с морфологией) при этом сортирует результаты по релевантности. Сразу скажу, что описанный в статье метод применим к СУБД MySQL, для неё и писался т.к. в работе применяются специфические именно для этой СУБД операторы и индексы, которые не входят в общую спецификацию языка SQL.  Ну да хватит лирических отступлений, давайте переходить к делу.

Read more …

Tags: , ,

Решение извечной проблемы с кодировками в сайтостроении

Приветствую тебя, уважаемый читатель. Речь пойдёт, как уже понятно из названия, о кодировках в web. Не смотря на то, что на эту тему уже написано тонны текстовых материалов, все же проблема остаётся и продолжает иметь место. Read more …

Tags: , , , , , ,

MySQL (Can’t connect … through socket) — решение проблемы

В данном посте я заведу речь о, как в последствии оказалось, весьма наболевшей проблеме связанной с MySQL сервером установленным на машину под управлением операционной системы на базе ядра Linux. Для её решения мне пришлось убить не мало времени, но я всё же таки разобрался в чём же было дело и с радостью поделюсь секретом с Вами. Read more …

Tags: , , , , , , ,

Call to undefined function mysql_connect()

Итак мы получаем ошибку с сообщением следующего типа Call to undefined function mysql_connect(), что дословно переводится как «Призыв неопределённый функции mysql_connect()». Read more …

Tags: , , , , ,

Как импортировать большую базу данных MySQL

В сие посте я заведу речь о том как же можно импортировать большую по размеру базу данных на сервере, т.е. как поднять файл с расширением .sql на боевом сервере баз данных MySQL. Естественно по традиции своего блога я поведаю о всех известных и популярных способах. На других блогах как правило пишется только о каком нибудь одном способе импорта базы, я же опишу сразу все, хотя я пожалуй уже начинаю повторяться. Давайте уже начнём. Read more …

Tags: , , , , , , , ,

MySQL error incorrect string value: for column at row

Недавно в своей практике при работе с СУБД MySQL встретил не приятную досадную ошибку вида incorrect string value:'\x81\xAE\xA3\xA4\xA0\xAD'for column 'name' at row 1. При этом значения шестнадцатеричной строки и названия столбца естественно могут быть другими, однако суть при этом не меняется. Read more …

Tags: , , , , , ,

7.29MB | MySQL:63 | 0,104sec