<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<atom:link href="https://dev1galaxy.org/extern.php?action=feed&amp;tid=5092&amp;type=rss" rel="self" type="application/rss+xml" />
		<title><![CDATA[Dev1 Galaxy Forum / SysVinit file for MySQL]]></title>
		<link>https://dev1galaxy.org/viewtopic.php?id=5092</link>
		<description><![CDATA[The most recent posts in SysVinit file for MySQL.]]></description>
		<lastBuildDate>Thu, 23 Jun 2022 22:45:21 +0000</lastBuildDate>
		<generator>FluxBB</generator>
		<item>
			<title><![CDATA[Re: SysVinit file for MySQL]]></title>
			<link>https://dev1galaxy.org/viewtopic.php?pid=36394#p36394</link>
			<description><![CDATA[<p>True. And the OP may also have their good reasons for not using <span class="bbc">mariadb</span>, which is the &quot;product line&quot; that is supported within the Devuan context (well, Debian context really, since it&#039;s not forked).</p>]]></description>
			<author><![CDATA[dummy@example.com (ralph.ronnquist)]]></author>
			<pubDate>Thu, 23 Jun 2022 22:45:21 +0000</pubDate>
			<guid>https://dev1galaxy.org/viewtopic.php?pid=36394#p36394</guid>
		</item>
		<item>
			<title><![CDATA[Re: SysVinit file for MySQL]]></title>
			<link>https://dev1galaxy.org/viewtopic.php?pid=36391#p36391</link>
			<description><![CDATA[<div class="quotebox"><cite>ralph.ronnquist wrote:</cite><blockquote><div><p>Isn&#039;t it called <span class="bbc">mariadb</span> in chimaera?</p></div></blockquote></div><p>no, mariadb is a fork of mysql. 2 different products. you can see OP is using external repo specifically for mysql.</p>]]></description>
			<author><![CDATA[dummy@example.com (xinomilo)]]></author>
			<pubDate>Thu, 23 Jun 2022 19:27:06 +0000</pubDate>
			<guid>https://dev1galaxy.org/viewtopic.php?pid=36391#p36391</guid>
		</item>
		<item>
			<title><![CDATA[Re: SysVinit file for MySQL]]></title>
			<link>https://dev1galaxy.org/viewtopic.php?pid=36387#p36387</link>
			<description><![CDATA[<p>Indeed. And package mariadb-server-10.5 on Chimaera provides an /etc/init.d/mariadb init script:</p><div class="codebox"><pre class="vscroll"><code>#!/bin/bash
#
### BEGIN INIT INFO
# Provides:          mariadb
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Should-Start:      $network $named $time
# Should-Stop:       $network $named $time
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start and stop the mysql database server daemon
# Description:       Controls the main MariaDB database server daemon &quot;mariadbd&quot;
#                    and its wrapper script &quot;mysqld_safe&quot;.
### END INIT INFO
#
set -e
set -u
${DEBIAN_SCRIPT_DEBUG:+ set -v -x}

test -x /usr/sbin/mariadbd || exit 0

. /lib/lsb/init-functions

SELF=$(cd $(dirname $0); pwd -P)/$(basename $0)

MYADMIN=&quot;/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf&quot;

# priority can be overridden and &quot;-s&quot; adds output to stderr
ERR_LOGGER=&quot;logger -p daemon.err -t /etc/init.d/mariadb -i&quot;

if [ -f /etc/default/mysql ]; then
  . /etc/default/mysql
fi

# Also source default/mariadb in case the installation was upgraded from
# packages originally installed from MariaDB.org repositories, which have
# had support for reading /etc/default/mariadb since March 2016.
if [ -f /etc/default/mariadb ]; then
  . /etc/default/mariadb
fi

# Safeguard (relative paths, core dumps..)
cd /
umask 077

# mysqladmin likes to read /root/.my.cnf. This is usually not what I want
# as many admins e.g. only store a password without a username there and
# so break my scripts.
export HOME=/etc/mysql/

## Fetch a particular option from mysql&#039;s invocation.
#
# Usage: void mariadbd_get_param option
mariadbd_get_param() {
  /usr/sbin/mariadbd --print-defaults \
    | tr &quot; &quot; &quot;\n&quot; \
    | grep -- &quot;--$1&quot; \
    | tail -n 1 \
    | cut -d= -f2
}

## Do some sanity checks before even trying to start mariadbd.
sanity_checks() {
  # check for config file
  if [ ! -r /etc/mysql/my.cnf ]; then
    log_warning_msg &quot;$0: WARNING: /etc/mysql/my.cnf cannot be read. See README.Debian.gz&quot;
    echo                &quot;WARNING: /etc/mysql/my.cnf cannot be read. See README.Debian.gz&quot; | $ERR_LOGGER
  fi

  # check for diskspace shortage
  datadir=`mariadbd_get_param datadir`
  if LC_ALL=C BLOCKSIZE= df --portability $datadir/. | tail -n 1 | awk &#039;{ exit ($4&gt;4096) }&#039;; then
    log_failure_msg &quot;$0: ERROR: The partition with $datadir is too full!&quot;
    echo                &quot;ERROR: The partition with $datadir is too full!&quot; | $ERR_LOGGER
    exit 1
  fi
}

## Checks if there is a server running and if so if it is accessible.
#
# check_alive insists on a pingable server
# check_dead also fails if there is a lost mariadbd in the process list
#
# Usage: boolean mariadbd_status [check_alive|check_dead] [warn|nowarn]
mariadbd_status () {
  ping_output=`$MYADMIN ping 2&gt;&amp;1`; ping_alive=$(( ! $? ))

  ps_alive=0
  pidfile=`mariadbd_get_param pid-file`
  if [ -f &quot;$pidfile&quot; ] &amp;&amp; ps `cat $pidfile` &gt;/dev/null 2&gt;&amp;1; then ps_alive=1; fi

  if [ &quot;$1&quot; = &quot;check_alive&quot;  -a  $ping_alive = 1 ] ||
     [ &quot;$1&quot; = &quot;check_dead&quot;   -a  $ping_alive = 0  -a  $ps_alive = 0 ]; then
    return 0 # EXIT_SUCCESS
  else
    if [ &quot;$2&quot; = &quot;warn&quot; ]; then
      echo -e &quot;$ps_alive processes alive and &#039;$MYADMIN ping&#039; resulted in\n$ping_output\n&quot; | $ERR_LOGGER -p daemon.debug
    fi
  return 1 # EXIT_FAILURE
  fi
}

#
# main()
#

case &quot;${1:-&#039;&#039;}&quot; in

  &#039;start&#039;)
  sanity_checks;
  # Start daemon
  log_daemon_msg &quot;Starting MariaDB database server&quot; &quot;mariadbd&quot;
  if mariadbd_status check_alive nowarn; then
   log_progress_msg &quot;already running&quot;
   log_end_msg 0
  else
    # Could be removed during boot
    test -e /run/mysqld || install -m 755 -o mysql -g root -d /run/mysqld

    # Start MariaDB!
    /usr/bin/mysqld_safe &quot;${@:2}&quot; 2&gt;&amp;1 &gt;/dev/null | $ERR_LOGGER &amp;

    for i in $(seq 1 &quot;${MYSQLD_STARTUP_TIMEOUT:-30}&quot;); do
      sleep 1
      if mariadbd_status check_alive nowarn ; then break; fi
      log_progress_msg &quot;.&quot;
    done
    if mariadbd_status check_alive warn; then
      log_end_msg 0
      # Now start mysqlcheck or whatever the admin wants.
      output=$(/etc/mysql/debian-start)
      if [ -n &quot;$output&quot; ]; then
        log_action_msg &quot;$output&quot;
      fi
    else
      log_end_msg 1
      log_failure_msg &quot;Please take a look at the syslog&quot;
    fi
  fi
  ;;

  &#039;stop&#039;)
  # * As a passwordless mysqladmin (e.g. via ~/.my.cnf) must be possible
  # at least for cron, we can rely on it here, too. (although we have
  # to specify it explicit as e.g. sudo environments points to the normal
  # users home and not /root)
  log_daemon_msg &quot;Stopping MariaDB database server&quot; &quot;mariadbd&quot;
  if ! mariadbd_status check_dead nowarn; then
    set +e
    shutdown_out=`$MYADMIN shutdown 2&gt;&amp;1`; r=$?
    set -e
    if [ &quot;$r&quot; -ne 0 ]; then
      log_end_msg 1
      [ &quot;$VERBOSE&quot; != &quot;no&quot; ] &amp;&amp; log_failure_msg &quot;Error: $shutdown_out&quot;
      log_daemon_msg &quot;Killing MariaDB database server by signal&quot; &quot;mariadbd&quot;
      killall -15 mariadbd
      server_down=
      for i in `seq 1 600`; do
        sleep 1
        if mariadbd_status check_dead nowarn; then server_down=1; break; fi
      done
      if test -z &quot;$server_down&quot;; then killall -9 mariadbd; fi
    fi
  fi

  if ! mariadbd_status check_dead warn; then
    log_end_msg 1
    log_failure_msg &quot;Please stop MariaDB manually and read /usr/share/doc/mariadb-server-10.5/README.Debian.gz!&quot;
    exit -1
  else
    log_end_msg 0
  fi
  ;;

  &#039;restart&#039;)
  set +e; $SELF stop; set -e
  shift
  $SELF start &quot;${@}&quot;
  ;;

  &#039;reload&#039;|&#039;force-reload&#039;)
  log_daemon_msg &quot;Reloading MariaDB database server&quot; &quot;mariadbd&quot;
  $MYADMIN reload
  log_end_msg 0
  ;;

  &#039;status&#039;)
  if mariadbd_status check_alive nowarn; then
    log_action_msg &quot;$($MYADMIN version)&quot;
  else
    log_action_msg &quot;MariaDB is stopped.&quot;
    exit 3
  fi
  ;;

  &#039;bootstrap&#039;)
	# Bootstrap the cluster, start the first node
	# that initiates the cluster
	log_daemon_msg &quot;Bootstrapping the cluster&quot; &quot;mariadbd&quot;
	$SELF start &quot;${@:2}&quot; --wsrep-new-cluster
	;;

  *)
  echo &quot;Usage: $SELF start|stop|restart|reload|force-reload|status&quot;
  exit 1
  ;;
esac</code></pre></div>]]></description>
			<author><![CDATA[dummy@example.com (Marjorie)]]></author>
			<pubDate>Thu, 23 Jun 2022 17:14:21 +0000</pubDate>
			<guid>https://dev1galaxy.org/viewtopic.php?pid=36387#p36387</guid>
		</item>
		<item>
			<title><![CDATA[Re: SysVinit file for MySQL]]></title>
			<link>https://dev1galaxy.org/viewtopic.php?pid=36376#p36376</link>
			<description><![CDATA[<p>Isn&#039;t it called <span class="bbc">mariadb</span> in chimaera?</p>]]></description>
			<author><![CDATA[dummy@example.com (ralph.ronnquist)]]></author>
			<pubDate>Thu, 23 Jun 2022 02:27:11 +0000</pubDate>
			<guid>https://dev1galaxy.org/viewtopic.php?pid=36376#p36376</guid>
		</item>
		<item>
			<title><![CDATA[SysVinit file for MySQL]]></title>
			<link>https://dev1galaxy.org/viewtopic.php?pid=36374#p36374</link>
			<description><![CDATA[<p>Trying to get MySQL to start in Devuan Chimaera, noticed that the MYSQL distributed for bullseye no longer includes a SysVinit file.</p><p>This is a workaround using an older init file:</p><p>Add to </p><div class="codebox"><pre><code>/etc/apt/sources.list.d/mysql.list</code></pre></div><p>:</p><div class="codebox"><pre><code>### THIS FILE IS AUTOMATICALLY CONFIGURED ###
# You may comment out entries below, but any other modifications may be lost.
# Use command &#039;dpkg-reconfigure mysql-apt-config&#039; as root for modifications.
deb http://repo.mysql.com/apt/debian/ bullseye mysql-apt-config
deb http://repo.mysql.com/apt/debian/ bullseye mysql-8.0
deb http://repo.mysql.com/apt/debian/ bullseye mysql-tools
##deb http://repo.mysql.com/apt/debian/ bullseye mysql-tools-preview
deb-src http://repo.mysql.com/apt/debian/ bullseye mysql-8.0</code></pre></div><p>Install with apt as usual</p><p>Add to </p><div class="codebox"><pre><code>/etc/init.d/mysql</code></pre></div><p>:</p><div class="codebox"><pre class="vscroll"><code>!/bin/bash
#
### BEGIN INIT INFO
# Provides:          mysql
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Should-Start:      $network $time
# Should-Stop:       $network $time
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start/ Stop MySQL Community Server daemon
# Description:       This service script facilitates startup and shutdown of
#                    mysqld daemon throught its wrapper script mysqld_safe
### END INIT INFO
#

# Copyright (c) 2015, 2018, Oracle and/or its affiliates. All rights reserved.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License, version 2.0,
# as published by the Free Software Foundation.
#
# This program is also distributed with certain software (including
# but not limited to OpenSSL) that is licensed under separate terms,
# as designated in a particular file or component or in included license
# documentation.  The authors of MySQL hereby grant you an additional
# permission to link the program and your derivative works with the
# separately licensed software that they have included with MySQL.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License, version 2.0, for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA

. /lib/lsb/init-functions
. /usr/share/mysql-8.0/mysql-helpers
cd /
umask 077

# In case server is taking more to start or stop increase the timeout here
STARTTIMEOUT=180
STOPTIMEOUT=60

# We need to check that the binaries exist; When upgrading from community to commercial this
# script will be run after community is removed but before commercial is installed
VERSION=&quot;unknown&quot;
if pathfind mysqld; then
        VERSION=$(mysqld --version | grep mysqld | cut -d&#039; &#039; -f4)
fi

MYSQLRUN=/var/run/mysqld
MYSQLDATA=$(get_mysql_option mysqld datadir &quot;/var/lib/mysql&quot;)
MYSQLFILES=/var/lib/mysql-files
MYSQLKEYRING=/var/lib/mysql-keyring
MYSQLLOG=/var/log/mysql

# Do a quick check that the user is allowed to access the pid file
MYSQLDATA=$(get_mysql_option mysqld datadir &quot;/var/lib/mysql&quot;)
if [ -d &quot;$MYSQLDATA&quot; ] &amp;&amp; [ ! -r &quot;$MYSQLDATA&quot; ];
then
        echo &quot;Permission denied. Please run as root.&quot;
        exit 1
fi

case &quot;$1&quot; in
  &#039;start&#039;)
        if [ &quot;$(get_running)&quot; -eq 1 ];
        then
                log_action_msg &quot;A MySQL Server is already started&quot;
        else
                verify_ready
                verify_database

                su - mysql -s /bin/bash -c &quot;mysqld_safe &gt; /dev/null &amp;&quot;
                verify_server start
                if [ &quot;$?&quot; -eq 0 ];
                then
                        log_action_msg &quot;MySQL Community Server ${VERSION} is started&quot;
                else
                        log_action_msg &quot;MySQL Community Server ${VERSION} did not start. Please check logs for more details.&quot;
                fi
        fi
        ;;

  &#039;stop&#039;)
        if [ &quot;$(get_running)&quot; -eq 1 ];
        then
               killall -u mysql
                verify_server stop
                if [ &quot;$?&quot; -eq 0 ];
                then
                        log_action_msg &quot;MySQL Community Server ${VERSION} is stopped&quot;
                else
                        log_action_msg &quot;Attempt to shutdown MySQL Community Server ${VERSION} timed out&quot;
                fi
        else
                log_action_msg &quot;MySQL Community Server ${VERSION} is already stopped&quot;
        fi
        ;;

  &#039;restart&#039;|&#039;reload&#039;|&#039;force-reload&#039;)
        log_action_msg &quot;Stopping MySQL Community Server ${VERSION}&quot;
        $0 stop
        log_action_msg &quot;Re-starting MySQL Community Server ${VERSION}&quot;
        $0 start
        ;;

  &#039;status&#039;)
        if [ &quot;$(get_running)&quot; -eq 1 ];
        then
                log_action_msg &quot;MySQL Community Server ${VERSION} is running&quot;
        else
                log_action_msg &quot;MySQL Community Server ${VERSION} is not running&quot;
                exit 3
        fi
        ;;

  *)
        echo &quot;Usage: $SELF start|stop|restart|reload|force-reload|status&quot;
        exit 1
        ;;
esac

exit 0</code></pre></div><p>chmod +x the file and</p><div class="codebox"><pre><code>update-rc.d mysql defaults</code></pre></div><p>Basic tests OK, starts and status reported properly</p>]]></description>
			<author><![CDATA[dummy@example.com (greenant)]]></author>
			<pubDate>Thu, 23 Jun 2022 01:32:16 +0000</pubDate>
			<guid>https://dev1galaxy.org/viewtopic.php?pid=36374#p36374</guid>
		</item>
	</channel>
</rss>
