Как остановить запуск mysql во время загрузки?


55

В настоящее время мой сервер MySQL запускается при каждой загрузке сервера. По нескольким причинам это нежелательное поведение. Есть ли способ отключить это поведение?

Ответы:


6

Есть два Guis, о которых я могу думать. В Приложениях -> Центр программного обеспечения Ubuntu найдите «менеджер загрузки». После установки вы найдете его в Системе -> Администрирование -> BootUP-Manager. Еще один Webmin. Webmin использует ваш браузер. После установки укажите ваш браузер на https: // localhost: 10000 / Ищите сервисы и работайте оттуда.


2
Этот метод не работал для меня 16 апреля
Мостафа Ахангарха

76

Чтобы запретить запуск mysql при загрузке:

  1. Откройте терминал: Ctrl+ Alt+T

  2. Откройте mysql.confфайл:nano /etc/init/mysql.conf

  3. Закомментируйте start onстроку в верхней части файла, она start onможет быть разбита на две строки, поэтому закомментируйте обе. (добавление комментария #в начале)

Если вы хотите запустить mysql вручную, используйте следующую команду:

service mysql start

Взятые обильно отсюда.


3
Это очень полезный ответ для нескольких инициаций при запуске.
maniat1k

1
Пробовал, у меня /usr/sbin/mysqldи /bin/sh /usr/bin/mysqld_safeработает. Все закомментировали, но не помогли.
Эмин Мастизада

ИМО это лучший ответ.
simhumileco

в Linux Mint 18.2 Cinnamon я удалил /etc/init/mysql.conf без изменений. Mysql сервер все еще работает при запуске. Решение @thebugfinder сработало для меня
полет через

anacron.conf и whoopsie.conf - это все, что я вижу в / etc / init @ maniat1k
Прабеш Бхаттараи

73

С 15.04 вы можете просто сделать:

sudo systemctl disable mysql

4
На самом деле. Для 15.04 это ответ, который вы ищете.
CommandZ

Круто, наконец-то я нашел решение для этого! Другие методы не работают для меня.
Ревес

Я не могу запустить его снова, как мне запустить mysql после команды?
Ревес

@rneves ты пробовал enableили reenable?
thebugfinder

1
@thebugfinder Я пытался enable, я не знаю reenable, но enableзаставляет меня перезагрузить компьютер, чтобы снова запустить mysql
rneves

8

В Ubuntu все немного изменилось. Я думаю, начиная с версии 11 года. MySQL обрабатывается Upstart, в то время как Apache все еще использует традиционные сценарии инициализации SysV

Для MySQL вы можете использовать новую функцию переопределения в Upstart, чтобы изменить начальное поведение:

sudo echo "manual" >> /etc/init/mysql.override

Для получения дополнительной информации см. Раздел « Отключение задания от автоматического запуска » в Upstart Cookbook.

Поскольку Apache по-прежнему использует традиционные сценарии инициализации SysV, которые вы можете использовать

sudo update-rc.d -f apache2 remove

удалить ссылки /etc/rcX.dили, альтернативно, использовать

sudo update-rc.d apache2 disable

который «отключает» скрипт, изменяя его с стартового скрипта на стоп-скрипт. Это обратимо

sudo update-rc.d apache2 enable

Большую часть этой информации я получил здесь: https://askubuntu.com/a/40077/24678


Если вы хотите восстановить сервисsudo update-rc.d apache2 defaults
Bentech

4

В Ubuntu 18.04 sudo systemctl disable mysqlзапретит mysql-serverавтозапуск при загрузке.

Для Linux, существует 3 основные системы инициализации: Systemd, Upstartи SysV. Хотя почти все системы Linux работают на Systemd. Две другие системы инициализации также могут сосуществовать в вашей системе.

Для Systemd, используйте команду sudo systemctl disable mysql;
Для Upstartиспользования echo manual >> /etc/init/mysql.override;
Для SysV, выполните следующую командуsudo update-rc.d mysql disable

Если вы хотите узнать, какая система инициализации работает на вашем сервере, прочитайте этот ответ .


2

Или, если вы действительно ленивы, как я, вы можете просто открыть сеанс терминала и затем набрать:

sudo perl -pi.orig -e 's/start\s+on/#start\s+on/' /etc/init/mysql.conf && sudo perl -pi.orig -e 's/and\s+/#and/g' /etc/init/mysql.conf

Затем вы можете просто выполнить команду перезагрузки, после чего ваша система загрузится без запуска mysql.


1
Эта команда может быть улучшена. Это добавляет +уход из строки, как это: #start+on blahblahblahно это работает!
Лусио

2

На самом деле, есть и другой способ сделать это с помощью инструмента sysv-rc-conf.

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

sudo apt-get install sysv-rc-conf

Это позволяет вам контролировать все доступные сервисы, включая запуск / остановку их на месте и настройку работы сервисов для каждого уровня выполнения.

Редактировать: Вы должны запустить этот инструмент от имени root:

sudo sysv-rc-conf

0

Вы можете использовать chkconfigпакет инструментов

$ chkconfig --level 345 mysqld off

2
Пожалуйста, опишите ваш ответ. Как вы думаете, почему это решает вопрос? Например, вы можете добавить ссылку на руководство в качестве ссылки.
Byte Commander
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.