Ubuntu: где добавить скрипт, выполняющий SQL при запуске машины?

Каждый раз, когда Ubuntu запускается, мне нужно запустить скрипт, на котором запущены некоторые SQL. Поэтому мне нужно запустить его после запуска MySQL.

Где я должен поставить такой скрипт?

  • Как автоматически запустить TightVNC-сервер как root при запуске Ubuntu?
  • Сервер Ubuntu не может получить доступ к Интернету: отображается связанный с DNS
  • Системный фильтр Exim с разделенной конфигурацией
  • Резервное копирование и восстановление ассоциации типа Wine и mime
  • Нет микрофонного входа - VIZIO CT15-A5 и 12.04 LTS (64)
  • Как разрешить пользователю выполнять скрипт, принадлежащий root? Сетуид больше не работает
  • Сильно удалить физический диск из группы томов LVM
  • bash autocomplete не работает, не «завершает»
  • 2 Solutions collect form web for “Ubuntu: где добавить скрипт, выполняющий SQL при запуске машины?”

    файл должен быть помещен в /etc/init.d , а ссылка /etc/rc2.d в /etc/rc2.d (при условии, что вы находитесь на уровне запуска 2 (см. who -r ).

    Ссылка должна быть в форме S99sql , все файлы в rc2.d выполняются в алфавитном порядке.

    подводить итоги,

    создать файл тура в /etc/init.d/mysqlcmd.sh

    затем смените каталог на /etc/rc2.d ans ln -s ../init.d/mysqlcmd.sh S99mysql

    Systemd

    Если версия Ubuntu, которую вы используете, использует systemd (14.04), тогда вы можете изменить файл .service и добавить еще один скрипт, который будет запущен, когда MySQL будет готов.

     # vi /usr/lib/systemd/system/mysqld.service 

    Добавить еще одну запись:

     ExecStartPost=/usr/libexec/mysqld-wait-ready $MAINPID 

    добавив точку с запятой и имя вашего скрипта:

     ExecStartPost=/usr/libexec/mysqld-wait-ready $MAINPID ; <path to my script> 

    Обратите внимание, что эти сценарии не запускаются с использованием оболочки, поэтому вам нужно будет обернуть их в bash или подобный, если вам нужно перенаправить и т. Д.

    Сценарий mysqld-wait-ready выполняет именно то, что он говорит, и ждет, пока mysqld будет готов принимать соединения. Поэтому ваш скрипт должен иметь возможность запускать SQL на сервере.

    Выскочка

    Для версий Ubuntu до версии 14.04 вы можете создать файл upstart conf

     description "My Post-MySQL Start Script" author "Pavel Bernshtam" start on started mysql task script # do my stuff here end script 

    Сохраните файл в /etc/init/<my script name>.conf

    Более подробная информация о сценариях upstart доступна здесь

    Linux и Unix - лучшая ОС в мире.