Как сделать, чтобы mysql запускался автоматически? (только linux-cli)

Как я могу запустить mysql каждый раз при загрузке системы? Мне нужно это на выделенном сервере (дистрибутив Ubuntu), на котором у меня есть мой блог, но каждый раз, когда сервер выходит из строя, при загрузке mysql останавливается. Кстати, я могу использовать только командную строку.


person vasilakisfil    schedule 25.03.2012    source источник
comment
связанные serverfault.com/questions/232046/   -  person n611x007    schedule 01.09.2015


Ответы (9)


Вы можете сделать это, используя sysv-rc-conf, на основе Debian вы можете установить его с помощью sudo apt-get install sysv-rc-conf, затем вы можете выбрать, что запускать при загрузке, с помощью простого X на имени демона, все через командную строку

введите здесь описание изображения

person Christian Giupponi    schedule 25.03.2012
comment
Опять не работает. Я отметил X mysql на всех уровнях выполнения плюс S, но при перезагрузке службы статус mysql говорит, что mysql остановлен/ожидает. - person vasilakisfil; 25.03.2012
comment
Извините, а что означают цифры в верхнем ряду? - person Magnus; 04.09.2013
comment
Начиная с Ubuntu 12.10, sysv-rc-conf является заменой chkconfig, рекомендованной ниже. Он также позволяет использовать команды вместо интерфейса ncurses, в данном случае: sysv-rc-conf mysql on. - person tanius; 07.03.2014
comment
И эквивалентом для CentOS/RedHat является ntsysv (название вопроса предлагает системы Linux) - person ılǝ; 14.04.2014
comment
Он отлично работает для меня в различных версиях Ubuntu, но не создает символические ссылки в Debian 7. Интересно, что если я выхожу и перезапускаю программу, она сохраняет отмеченные мной крестики, но демоны не запускаются, потому что символические ссылки в /etc/rcX.d/ не создаются. - person Attila Fulop; 20.11.2014

update-rc.d позволяет устанавливать ссылки на сценарии инициализации в системах Ubuntu и Debian Linux, чтобы контролировать, какие службы запускаются init при переходе на различные уровни выполнения. Он должен иметь возможность добавить mysql в список служб, запускаемых при загрузке:

sudo update-rc.d mysql defaults

Если позже вы захотите отключить запуск mysql при загрузке:

sudo update-rc.d mysql remove
person inquiryqueue    schedule 26.03.2012

Выполните следующую команду, чтобы увидеть текущий статус mysql:

/sbin/chkconfig mysqld --list

он вернет строку, как показано ниже:

 mysqld             0:off   1:off   2:off   3:off   4:off   5:off   6:off

чтобы mysql запускался каждый раз при загрузке системы, введите следующее:

 sudo /sbin/chkconfig mysqld on

Результат теперь из '--list':

mysqld          0:off   1:off   2:on    3:on    4:on    5:on    6:off
person Seanog    schedule 05.02.2013
comment
Отличный ответ. Просто и эффективно. - person Damo; 23.11.2013
comment
Мой сервер CentOS всегда запускал mysqld при загрузке. Но со вчерашнего дня больше не было. Но мне помогло это решение. Большое спасибо! - person unlimited101; 16.12.2014
comment
Пытался применить это решение, но когда система перезагружается и я проверяю статус службы mysql, он говорит: MySQL is not running, but PID file exists. Я знаю, что это старая тема, но у нас заканчиваются варианты. Кстати, вывод команды /sbin/chkconfig mysql --list кажется справедливым. Мы перепробовали все ответы на этой странице, но, к сожалению, безуспешно. - person JorgeGRC; 05.03.2015
comment
похоже, он даже не пытается запустить скрипт внутри /etc/init.d/ - person JorgeGRC; 05.03.2015

Ни один ответ не помог. Наконец, chkconfig и update-rc.d не работали с MySQL на моей машине.

Решение. У меня был файл /etc/init/mysql.override, который содержал

manual

я просто удалил этот файл

$ sudo rm /etc/init/mysql.override
person sausix    schedule 31.12.2013

Удаление /etc/init/mysql.override помогло в моем случае (HostEurope VPS с Ubuntu 12.04)

person Florian Arndt    schedule 28.01.2014

У меня была та же проблема, поэтому я проверил, как я отключил ее в первую очередь:

https://askubuntu.com/questions/138487/how-to-keep-apache-and-mysql-from-starting-automatically

Проверьте свой файл /etc/init/mysql.conf, чтобы убедиться, что начало не закомментировано (как это сделал я).

# MySQL Service

description     "MySQL Server"

author          "Mario Limonciello <[email protected]>"

start on runlevel [2345]
stop on starting rc RUNLEVEL=[016]
...

Перезагрузил машину и все работает.

$ sudo service mysql status
mysql start/running, process 972
person Firemyst    schedule 05.08.2013

Используйте команду chkconfig согласно справочной странице http://manpages.ubuntu.com/manpages/maverick/man8/chkconfig.8.html

person Matt Healy    schedule 25.03.2012

Еще одно место, где можно найти подсказки о том, что запускается, а что нет во время загрузки...

/etc/init.d/.depend.start (и его партнер во время выключения, .depend.stop)

Вот еще немного информации http://www.pyenet.co.nz/2-202-1-customising-system-startup-and-boot-processes/

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

В поле, где mysql запускался во время загрузки:

  • chkconfig даже не был установлен
  • не было никаких ссылок из каких-либо скриптов в /etc/rc?.d/* обратно в /etc/init.d/mysql
  • НО... /etc/init.d/.depend.start содержал:

    TARGETS = halt apache2 umountfs umountnfs.sh sendsigs networking umountroot reboot killprocs unattended-upgrades urandom mysql mdadm dns-clean landscape-client pppd-dns sysstat rsync sudo postfix single grub-common ondemand rc.local
    INTERACTIVE = apache2
    postfix: mysql
    single: killprocs dns-clean pppd-dns
    grub-common: apache2 unattended-upgrades postfix mysql mdadm dns-clean landscape-client pppd-dns sysstat rsync sudo
    ondemand: apache2 unattended-upgrades postfix mysql mdadm dns-clean landscape-client pppd-dns sysstat rsync sudo
    rc.local: apache2 unattended-upgrades postfix mysql mdadm dns-clean landscape-client pppd-dns sysstat rsync sudo
    

Когда я просто скопировал этот файл на проблемный сервер и перезагрузился, mysql заработал.

person Eric Thiele    schedule 14.01.2015

С Debian 9 я сегодня установил MySQL и набрал «reboot», и mysqld перезапустился автоматически. Также перезагрузился с моей панели управления VPS, mysqld перезапустился автоматически. Короче говоря, если у вас стоит Debian 9, ничего лишнего делать не надо, все работает.

person PJ Brunet    schedule 21.09.2017