MySQL или MariaDB?

Оригинальная версия MySQL была разработана компанией MySQL AB, первая версия появилась в 1995 году. В январе 2008 Sun Microsystems приобрела MySQL AB за 1 миллиард долларов. Вскоре после этого, Oracle купила Sun Microsystems. Из-за недоверия к стратегии развития MySQL был создан форк под названием MariaDB.

Со временем MariaDB начала использоваться во многих дистрибутивах Linux по умолчанию. Она используется для обеспечения работы большого количества сайтов. В данном обзоре сравнивается MySQL и MariaDB.

MySQL или MariaDB

MySQL: выборка за сегодня/вчера/неделю/месяц

За сегодня:

SELECT * FROM table WHERE date >= curdate();

За вчера:

SELECT * FROM table WHERE date >= (curdate()-1) AND date < curdate();

За неделю:

SELECT * FROM table WHERE date >= DATE_SUB(curdate, interval 1 week);

За месяц:

SELECT * FROM table WHERE date >= DATE_SUB(curdate, interval 1 month);

Linux: Установка и запуск Django с mysql

Добавляем репозиторий:

sudo add-apt-repository ppa:fkrull/deadsnakes

Обновляем информацию о пакетах и запускаем установку последней версии (на момент написания 3.5):

sudo apt-get update; sudo apt-get install python3.5
sudo apt-get install python-setuptools

Очистка MySQL-экрана в терминале Linux

Очень часто в Ubunu пользуюсь командой clear для очистки рабочей области экрана в теминале. Работая с MySQL приходит на помощь команда:

system clear

или

\! clear

MySQL: терминатор \G

Пост для тех, кто работает с MySQL в терминале/консоли.

Согласитесь, проблемно быстро разобраться в несколько записях, когда полей в таблице много и строка не помещается на ширину экрана. Например как на скриншоте ниже.

MySQL: выборка значений ОТ и ДО

Простой ответ на простой вопрос.

WHERE value BETWEEN 1 AND 10

или

WHERE field >= 1  AND field <= 10

MySQL: процессы в режиме реального времени

Для просмотра процессов MySQL достаточно набрать консольную команду:

show processlist;

Но это не всегда удобно, т.к. порой необходимо отслеживать их в реальном времени. Для этой задачи существует полезная утилита Mytop.

Mytop. Процессы mysql

MySQL-бэкап. Консольные команды

Небольшая шпаргалка по работе с MySQL-бэкапами через консоль.

Делаем дамп базы в текущую директорию:

mysqldump -h host -u user -p my_database > my_dump.sql 

Создаем backup таблицы mysql:

mysqldump -h host -u user -p my_database my_table > my_table.sql 

 (для экпорта нескольких таблиц в один дамп - my_table1 my_table2)

Загружаем backup таблицы:

mysql -h host -u user -p my_database < my_table.sql

Основные консольные команды MySQL

Всем известно, что в пакете с СУБД MySQL поставляется консольный клиент. Но при этом мало кто им всерьез пользуется, предпочитая GUI- и WEB-аналоги (например MySQL Front, phpMyAdmin). Большинство аргументирует это тем, что консольный mysql неудобен. Докажем обратное.

MySQL: Увеличение лимита памяти импорта БД

При ошибке в phpmyadmin: You probably tried to upload too large file. Please refer to documentation for ways to workaround this limit.