Mysql
 sql >> база данни >  >> RDS >> Mysql

Не може да се увеличи max_open_files за Mysql max-connections в Ubuntu 15

Ubuntu премина от Upstart към Systemd във версия 15.04 и вече не спазва ограниченията в /etc/security/limits.conf за системни услуги. Тези ограничения вече важат само за потребителски сесии.

Ограниченията за услугата MySQL са дефинирани в конфигурационния файл на Systemd, който трябва да копирате от местоположението му по подразбиране в /etc/systemd и след това да редактирате копието.

sudo cp /lib/systemd/system/mysql.service /etc/systemd/system/
sudo vim /etc/systemd/system/mysql.service # or your editor of choice

Добавете следните редове в долната част на файла:

LimitNOFILE=infinity
LimitMEMLOCK=infinity

Можете също да зададете числово ограничение, например LimitNOFILE=4510 .

Сега презаредете конфигурацията на Systemd с:

sudo systemctl daemon-reload

Рестартирайте MySQL и вече трябва да се подчинява на директивата max_connections.

Също така имах проблеми със спирането на MySQL чисто след надграждане до 15.04. Ако това ви засяга (ще знаете, защото времето за изчакване ще отнеме 300 секунди, когато направите service mysql stop или service mysql restart ) след това добавянето на следния ред към същия файл /etc/systemd/system/mysql.service го поправи за мен:

ExecStop=/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf shutdown

Последният проблем изглежда е отстранен от 16.04 и този ред вече не е необходим, така че преди да направите надстройка на дистрибуцията, ще искате да спрете MySQL и да премахнете ExecStop ред от конфигурационния файл.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mysql Join Две таблици на ключове

  2. Resque Mysql2::Грешка:Потребителят е превишил ресурса 'max_user_connections' (текуща стойност:10)

  3. Пренасочване на скитни портове за Mysql

  4. Колона 'user_id' в списъка с полета е двусмислена

  5. MYSQLI - КЪДЕ В масива