mysql on duplicate key update два и более ключа ( multiply keys )

Posted in Новости on 31 января, 2014 by admin

Если мы хотим сделать ODKU для двух и более ключей, нам нужно просто перечислить их через запятую :

С одним ключом :

insert into statistic (`ip`,`os`) values ('1.1.1.2', 'Debian6') on duplicate key update time = now();

несколько ключей :

insert into statistic (`ip`,`os`) values ('1.1.1.2', 'Debian6') on duplicate key update time = now(), os = 'Debian7';

Tags:

mysql on duplicate key update

Posted in Новости on 31 января, 2014 by admin

'ON DUPLICATE KEY UPDATE' — очень удобная функция для проверки строк по уникальному значению.

Например :

insert into statistic (`ip`,`os`) values ('1.1.1.2', 'Debian6') on duplicate key update time = now();

Имеем в таблице три столбца — ip , os , TIME ( TIMESTAMP ).
При совпадении первого уникального ( UNIQUE ) значения из запроса СУБД делает вместо инсерта UPDATE строки с этим значением с указанием ключей.
В нашем примере если у нас уже существует запись с ip = 1.1.1.2 , то у записи обновится поле time.

Tags:

Узнаем, какими движками MySQL какие таблицы пользуются

Posted in Новости on 21 января, 2014 by admin


SELECT engine,GROUP_CONCAT(DISTINCT TABLE_SCHEMA) Table_Schema_List,COUNT(*) FROM information_schema.tables GROUP BY engine;

Tags: ,

Тестирование корректности работы почтовых редиректов в Postfix + MySQL

Posted in Новости on 15 октября, 2013 by admin

postmap -q test2@test.ru mysql:/etc/postfix/mysql-aliases.cf

В ответ сервер должен выдать либо ничего ( нет редиректов ), либо список редиректов :


root@XXX:/etc/postfix# postmap -q test2@test.ru mysql:/etc/postfix/mysql-aliases.cf
XXX@YYY, XWX@WER.ru

Tags: , , ,

В названиях проектов в redmine знаки вопроса

Posted in Новости on 29 января, 2013 by admin

Эта ошибка возникает из-за того, что стандартная установка redmine выставляет кодировку БД и таблиц в latin1, что делает невозможным работу с кириллицей.

1. Сливаем нашу БД

mysqldump -uroot -ppass DATABASE --allow-keywords --create-options --complete-insert --default-character-set=latin1 --add-drop-table > dump.sql

2. Меняем кодировку

sed -i 's/latin1/utf8/g' dump.sql

3. импортируем дамп

mysql -uroot -ppass DATABASE --default-character-set=utf8 < dump.sql

Tags: ,