Архив рубрики: Базы данных

[postgresql] Включаем поддержку mysql через mysql_fdw

Это расширение, которое позволяет использовать таблицы из mysql в postgresql. Подробнее о самом плагине, а так же установке/использованию можно прочесть на официальной страничке проекта

В моём же случае, был апгрейд postgresql с 9.3 до 9.4 с некими «сюрпризами». А сюрпризы заключались в том, что на 9.3 была старая версия mysql_fdw в которой были опции address/query, которых нет в новой. И понятно, что при выполнении pg_upgrade получаем ругань на это. Как быть? А план такой (подсказали на одном из форумов):

1) подсунуть новый модуль mysql_fdw в 9.3.
2) заменить/удалить deprecated опции
3) собственно upgrade.

Читать далее

[mysql] Warning: Using a password on the command line interface can be insecure.

Это сообщение начало появляться в mysql 5.6 если используется ввод пароля прямо в строке с подключением. Что бы убрать это, нужно создать так называемый login-path с нужными параметрами подключения (user,pass,host,db,…) и потом его вызвать непосредственно в скрипте. И так, создаём (будет выдано приглашение на ввод пароля для юзера proftpd):

# mysql_config_editor set --login-path=proftpd --host=localhost --user=proftpd --password
Enter password:

Теперь в скриптах или в оболочке используем такую конструкцию:

# mysql --login-path=proftpd proftpd_admin -N -e "select ..."

Больше вы не будете видеть надоедливые сообщения.

ПС. Если по каким-то причинам это нельзя сделать, то можно просто «подавить» вывод stderr в /dev/null:

$ mysql -uuser -ppass -e "select 1" 2>/dev/null

[mysql] Сброс пароля root’a без рестарта сервера

Данная статья носит вольный перевод статьи.

И так: идея такая: поднять  второй экземпляр mysql, выставить нужный пароль, подменить файлы таблицы user (user.MYD, user.MYI) базы mysql и послать сигнал SIGHUP нашему mysql’ю что бы он заново перечитал grant’ы. Приступим

Читать далее

0xDBE. Новая IDE для разработчиков и админов СУБД от JetBrains

IDE основана на платформе IntelliJ, как и остальные IDE от JetBrains, поддерживает все популярные диалекты SQL, предлагает автодополнения и прочие удобства при работе с кодом SQL, работу со схемами баз данных, интеграцию в VCS и еще кое-что, о чем речь ниже. IDE написана на Java и поддерживает те СУБД, для которых есть драйверы JDBC.

Читать далее

[mysql] Удаление временной таблицы при crach’e

Один раз был крупный alter через репликацию на slave и он в этот момент ребутнулся по питанию. Сам mysql стартует нормально, но при попытке изменить одну из таблиц получаю сообщение:

ERROR 1050 (42S01): Table 'pirate/#sql-ib1293541' already exists

Захожу в папку базы pirate и вижу, что есть файлик #sql-ib1293541.ibd и больше ничего подозрительного. Пробую удалить разными методами:

Читать далее

Тюнинг mysql/postgresql on zfs/ext4

Ниже будет описан тюнинг самой mysql + OS-специфический. Тюнинг будет рассмотрен только для движка InnoDB.

mysql

Обязательно разнести базу и логи (innodb_log_group_home_dir) по разным датасетам (дискам). В идеале вынести на отдельный датасет и tmp_dir для mysql.

Читать далее

[mysql] Бэкап, перенос базы разными способами

1) Классический — через mysqldump.

Тут и так всё понятно. Но если у вас большая база, то обычная схема переноса (бэкап локально, копирование на удалённый хост, разворачивание из бэкапа) мало подходит. Решение простое: копировать через pipe и сразу вставлять строки в базу.

— на конечном хосте выполняем такую команду:

# nc -4dl 1.1.1.1 6625 | gunzip -c | mysql -p mydatabase

где 1.1.1.1 и 6625IP и порт куда будут передаваться данные

PS. Под linux использовать так:

# nc -l -p 6625 | gunzip -c | mysql -p mydatabase

Читать далее

PostgreSQL Studio 1.0, новый открытый web-интерфейс для PostgreSQL

Представлен релиз PostgreSQL Studio 1.0, открытого web-ориентированного графического интерфейса для СУБД PostgreSQL. Система позволяет управлять БД и выполнять SQL-запросы через web-браузер. Код проекта написан на Java и распространяется под свободной лицензией PostgreSQL.

Читать далее