Ustaw group_concat_max_len na stałe (konfiguracja MySQL)


20

Mam MySQL zainstalowany na maszynie Ubuntu.

Dodałem tę linię w /etc/mysql/my.cnf

group_concat_max_len = 15360

Ale nie ma efektu. Za każdym razem, gdy ponownie uruchamiam mysql, wartość jest ustawiana na 1024. Muszę ręcznie uruchomić

SET GLOBAL group_concat_max_len=15360

... za każdym razem, gdy uruchamiam mysql.

Dlaczego mój.cnf nie działa tak, jak myślałem, że powinien? Dziękuję Ci


To się zawsze zdarza. To albo 1) zły plik, albo 2) coś innego poniżej go zastąpiło.
Pacerier

1
@Pacerier lub dyrektywa została dodana pod niewłaściwym nagłówkiem grupy, jak w zaakceptowanej odpowiedzi.
Buttle Butkus

Odpowiedzi:


26

Jeśli masz już ustawienie my.cnf lub my.cfg, a ponowne uruchomienie nie przyniosło oczekiwanej zmiany, możesz po prostu umieścić to ustawienie w niewłaściwej lokalizacji.

Upewnij się, że ustawienie znajduje się pod nagłówkiem grupy [mysqld]

[mysqld]
group_concat_max_len=15360

możesz ponownie uruchomić mysqld bez obaw

BTW @ gbn może być w tym przypadku bardziej poprawne, ponieważ nie można używać przecinków w ustawieniach numerycznych dla my.cnf (+1 dla @gbn)


Sporo godzin spędziłem na debugowaniu, zanim zdałem sobie sprawę, że mój group_concat_max_len został zresetowany. Teraz nie będę musiał się martwić, że to się powtórzy. Dzięki wielkie. Domyślnie nie było ustawienia dla group_concat_max_len w my.cnf, więc właśnie dodałem go na dole, w [isamchk]. OOPS. Dzięki wielkie!
Buttle Butkus

Wkurza mnie tak bardzo, że niektóre ustawienia używają myślników, a niektóre podkreślenia w konfiguracji MySQL
mówi Brian Reinstate Monica

4

Używaj group_concat_max_len=15360 bez separatora tysięcy

Zobacz dokumenty

Jeśli to się nie utrzyma, musisz zidentyfikować poprawny plik my.cnf lub my.cfg użyty w instalacji


Dzięki za komentarz. Niestety, moim błędem było wstawienie „,” w moim pytaniu, ale nie w my.cnf. Rolando miał rację. Nie miałem pojęcia, że ​​lokalizacja group_concat_max_len ma znaczenie w my.cnf.
Buttle Butkus

0

Oto, co robię:
Otwórz MySQL Workbench i wybierz połączenie, którym chcesz manipulować, jeśli masz więcej niż jeden, a następnie kliknij Administracja serwera - Zaawansowane - Różne, wybierz group_concat_max_len i ustaw swoją długo pożądaną wartość.
Pamiętaj, aby ponownie uruchomić MySql.
Z poważaniem, Ola Balstad.


1
To nie jest ustawienie na stałe.
Dennis Kaarsemaker

To jest trwałe !!! Sprawdź, zanim skomentujesz.
Ola Balstad

Co to jest mysql workbench? Wygląda na to, że Twoja odpowiedź dotyczy tylko określonego interfejsu API dla MySQL. Prawdopodobnie dlatego jesteś poniżany. (Nawiasem mówiąc, nie przegłosowałem)
Buttle Butkus

MySql Workbench to przydatne narzędzie API, które jest dostarczane z MySQL Community Server podczas pobierania, tj. Z najnowszą wersją 5.6
Ola Balstad

NB !! Nie zniechęcaj się moją oceną. Jest to szybkie i dobre rozwiązanie typowego problemu.
Ola Balstad
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.