2009-05-27 3 views

ответ

16

Try:

sudo /etc/init.d/mysql reload 

или

sudo /etc/init.d/mysql force-reload 

Это должно инициировать перезагрузку конфигурации. Убедитесь, что скрипт init.our поддерживает его, хотя я не знаю, какую версию MySQL/OS вы используете?

Мой MySQL скрипт содержит следующее:

'reload'|'force-reload') 
     log_daemon_msg "Reloading MySQL database server" "mysqld" 
     $MYADMIN reload 
     log_end_msg 0 
     ;; 
+0

Кажется, не работает, я использую mysql5.1, я добавил в [mysqld] раздел: transaction-isolation = READ-UNCOMMITTED и после запуска вашего скрипта mysql> SELECT @@ GLOBAL.tx_isolation, @@ tx_isolation; + ----------------------- + ----------------- + | @@ GLOBAL.tx_isolation | @@ tx_isolation | + ----------------------- + ----------------- + | ПОВТОРНЫЙ-ЧИТАТЬ | ПОВТОРНЫЙ-ЧИТАТЬ | + ----------------------- + ----------------- + 1 ряд в комплекте (0.00 сек.) mysql> – omg

+0

О, выглядит действительно плохо .. – omg

+0

mysql reload должен перезагрузить все таблицы и настройки. Каков был результат его запуска? – Jon

23

Вы были так близко! Метод kill -HUP тоже не работал для меня.

Вы называли:

select @@global.max_connections; 

Все, что вам нужно было установить вместо выбора:

set @@global.max_connections = 400; 

См:

http://www.netadmintools.com/art573.html

http://www.electrictoolbox.com/update-max-connections-mysql/

+0

это было чертовски полезно! :) – stpn108

2

Конкретные действия, которые вы можете сделать из клиента SQL, и вам не нужно перезагружать ничего:

SET GLOBAL log = 'ON'; 
FLUSH LOGS; 
1

перегрузочный файл конфигурации (my.cnf) не может быть сделано без перезапуска сервера mysqld.

FLUSH LOGS только поворачивает несколько файлов журнала.

SET @@...=... устанавливает его для тех, кто еще не вошел в систему, но он исчезнет после следующего перезапуска. Но это дает ключ ... Do SET, и изменение my.cnf; таким образом, вы охвачены. Предостережение. Не все настройки могут быть выполнены через SET.

Смежные вопросы