Установить group_concat_max_len навсегда (MySQL config)


20

У меня установлен MySQL на машине с Ubuntu.

Я добавил эту строку в /etc/mysql/my.cnf

group_concat_max_len = 15360

Но нет никакого эффекта. Каждый раз, когда я перезапускаю mysql, значение устанавливается равным 1024. Я должен вручную запустить

SET GLOBAL group_concat_max_len=15360

... каждый раз, когда я запускаю MySQL.

Почему my.cnf не работает так, как я думал? Спасибо


Это всегда случается. Это либо 1) неверный файл, либо 2) что-то еще ниже переписало его.
Pacerier

1
@Pacerier или директива были добавлены под неправильным заголовком группы, как в принятом ответе.
Баттл Буткус

Ответы:


26

Если у вас уже есть настройка в my.cnf или my.cfg, и перезапуск не привел к ожидаемым изменениям, возможно, вы просто установили настройку не в том месте.

Убедитесь, что настройка находится под заголовком группы [mysqld]

[mysqld]
group_concat_max_len=15360

тогда вы можете перезапустить MySQL без беспокойства

BTW @ gbn может быть более правильным в этом случае, потому что вы не можете использовать запятые в числовых настройках для my.cnf (+1 для @gbn)


Я потратил несколько часов на отладку, прежде чем понял, что мои group_concat_max_len сброшены Теперь мне не придется беспокоиться о том, что это произойдет снова. Спасибо. В my.cnf по умолчанию не было настройки для group_concat_max_len, поэтому я просто добавил ее внизу, под [isamchk]. OOPS. Спасибо!
Баттл Буткус

Меня так беспокоит, что некоторые настройки используют дефисы, а некоторые используют подчеркивание в конфигурации MySQL
Брайан говорит, что восстановите Monica

4

Используйте group_concat_max_len=15360 без разделителя тысяч

Посмотреть документы

Если этого не произойдет, вам нужно указать правильный my.cnf или my.cfg, используемый вашей установкой


Спасибо за ваш комментарий. К сожалению, моя ошибка заключалась в том, что я поставил «,» в моем вопросе, но не в my.cnf. Роландо на самом деле был прав. Я понятия не имел, что местоположение для group_concat_max_len имело значение в my.cnf.
Баттл Буткус

0

Вот что я делаю:
Откройте MySQL Workbench и выберите соединение, которым вы хотите управлять, если у вас их больше одного, затем нажмите Администрирование сервера - Дополнительно - Разное, выберите group_concat_max_len и установите желаемое значение.
Не забудьте перезапустить MySql.
С уважением, Ола Балстад.


1
Это не установка постоянной настройки.
Деннис Каарсемакер

Это навсегда !!! Пожалуйста, проверьте, прежде чем комментировать.
Ола Балстад

Что такое MySQL верстак? Похоже, ваш ответ относится только к определенному API для MySQL. Вероятно, поэтому вы получаете отрицание. (Между прочим, я не отрицал вас)
Buttle Butkus

MySql Workbench - это полезный инструмент API, который поставляется с MySQL Community Server при его загрузке, то есть с последней версией 5.6
Ола Балстад,

NB !! Не расстраивайтесь из-за моего рейтинга. Это быстрое и хорошее решение общей проблемы.
Ола Балстад
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.