Yaroslav
20.09.2017
09:29:27
храни в формате sql, а при выводе приобразовуй
lost
20.09.2017
09:29:29
или даже timestamp
я бы даже скорее в timestamp сохранял
удобнее
Google
Gonchik
20.09.2017
09:35:21
Привет, Всем! Подскажите какая процедура по очистке binlog? Они растут, а о том, когда и как очищать не продумал
Ivan
20.09.2017
09:37:04
lost
20.09.2017
09:38:22
Gonchik
20.09.2017
09:39:26
5.6.37
lost
20.09.2017
09:39:46
не, там еще mixed бинлог формат по дефолту...
Ivan
20.09.2017
09:40:43
lost
20.09.2017
09:41:18
Gonchik
20.09.2017
09:41:19
binlog-format = ROW
binlog-checksum = crc32
lost
20.09.2017
09:41:32
Gonchik
20.09.2017
09:41:42
Почему?
lost
20.09.2017
09:41:56
потому что в row формате бинлоги растут как на дрожжах
Alexey
20.09.2017
09:43:07
есть же binlog_row_image
Google
Gonchik
20.09.2017
09:43:10
lost
20.09.2017
09:43:25
есть подводные камни?
Alexey
20.09.2017
09:43:34
а хорошая штука
lost
20.09.2017
09:43:59
ну я знаю про нее, но юзаю full по дефолту, потому что не тестили
Alexey
20.09.2017
09:44:40
ну, всё, что приходит на ум из подводных камней: есть утилиты, которые позволяют восстановить данные, прокрутив binlog назад. Вот для них требуется binlog_row_image=full по понятным причинам
а каких-то багов с binlog_row_image=minimal не могу припомнить
Gonchik
20.09.2017
09:49:36
binlog_row_image=full - это проверенный вариант?
lost
20.09.2017
09:51:44
Gonchik
20.09.2017
09:52:01
Zaur
20.09.2017
10:29:52
можно ли после операции update по не-примари ключу, вернуть список примари ключей записей в которых были сделаны изменения? или это зависит от либы/яп ?
lost
20.09.2017
10:31:29
нельзя
Zaur
20.09.2017
10:32:19
нельзя
а как быть если я хочу знать в каких записях были сделаны изменения? делать два запроса: select а потом update?
lost
20.09.2017
10:32:37
да, что-то вроде того: сначала выбрать записи, а потом обновить по праймари
Pavel
20.09.2017
10:35:39
ffffuuuu(
Ринат
20.09.2017
11:14:24
Полнотекстовый индек спостроил по двум строковым полям
ищу по слову тюльпаны-он не находит
по слову тюльпан-находит. Тоесть по точному совпдение. В чём юмор?
неинтересно так(
lost
20.09.2017
11:19:05
как ищешь
Google
lost
20.09.2017
11:19:09
давай код
в студию
Ринат
20.09.2017
11:59:55
match(pi.code, pi.name) against('тюльпаны' IN BOOLEAN MODE)
если просто тюльпан
то он найдёт, так как есть записи например "тюльпан красный"
lost
20.09.2017
12:01:52
а там точно boolean mode нужен
Ринат
20.09.2017
12:02:34
да без него тоже самое)
правда мариадб
но разницы нет же всё равно
lost
20.09.2017
12:02:55
да те же яйца, только в профиль
Ринат
20.09.2017
12:03:13
оч странно. Может както там в конфигах словари указывать надо?
я на одном проекте помню просто построил индексы и пошёл делать выборку
и всё ок
ничего не делал больше
или может быть поиск слова "тюльпаны" не должен находить "тюльпан"
lost
20.09.2017
12:09:05
а ты релевантность выдачи смотрел?
Ринат
20.09.2017
12:10:04
так 0 записей
lost
20.09.2017
12:10:48
значит не смотрел
Ринат
20.09.2017
12:11:11
match(pi.code, pi.name) against('тюльпаны' IN BOOLEAN MODE) as REL
Google
Ринат
20.09.2017
12:11:19
ну я так и делал
нет записей
lost
20.09.2017
12:11:48
может тогда у тебя нет тюльпанов?)
вообще
Ринат
20.09.2017
12:12:38
Тюльпан белый
Тюльпан белый
Тюльпан белый
Тюльпан фиолетовый
Тюльпан фиолетовый
Тюльпан фиолетовый
Если по слову тюльпан искать
lost
20.09.2017
12:13:17
ты не понял
убери фильтрацию из where
по полнотекстовому индексу
Ринат
20.09.2017
12:13:35
ааа
lost
20.09.2017
12:13:45
и посмотри релевантность по "тюльпаны"
Ринат
20.09.2017
12:13:55
сделал
0 напротив всех
lost
20.09.2017
12:14:02
и че? циферки?
отлично
Ринат
20.09.2017
12:14:13
33 записи и там по 0
lost
20.09.2017
12:14:14
скинь ddl таблицы
Ринат
20.09.2017
12:15:07
щас. Ну я то построил три индекса даже. Один по двум полям сразу, и по каждому полю по отдельноси
ни так ни так не пашет
Google
Ринат
20.09.2017
12:16:33
create table p_items
(
id int auto_increment
primary key,
code varchar(255) default '' not null,
name text not null,
cost decimal(9,2) default '0.00' not null,
forder int default '0' not null,
type int default '0' not null
)
;
create index code_name
on p_items (code, name)
;
create index code
on p_items (code)
;
create index name
on p_items (name)
;
lost
20.09.2017
12:18:43
чёт странно, вопрос глупый конечно, а ты точно fulltext повесил?
хотя тогда бы релевантности вообще бы не было и был бы эксепшн при запросе...
Ринат
20.09.2017
12:22:03
CREATE FULLTEXT INDEX name ON p_items(name);
так и вешал
кончено без него бы плевался
lost
20.09.2017
12:23:53
Сделай explain, посмотрим какой он индекс использует
Ринат
20.09.2017
12:27:31
юзает
lost
20.09.2017
12:35:26
не судьба короче
Ринат
20.09.2017
12:36:43
ну просто интересно
lost
20.09.2017
12:36:46
не будет он искать тюльпаны
будет искать только тюльпан
Ринат
20.09.2017
12:37:08
это значит что в базе он никак не отделяет конвовку слова для этого слова?
lost
20.09.2017
12:37:25
судя по доке он просто бьёт фразу по словам и индексирует
и ищет точное вхождение слова
/Spam
Ринат
20.09.2017
12:46:44
/spam
Alexey
20.09.2017
12:50:34