Sudo service mysql start ошибка

In my case, it was a space issue.
Check if you have enough space left.

from /var/log/mysql/error.log I got some hints from two lines:

2018-08-04T05:25:29.519139Z 0 [ERROR] InnoDB: Write to file ./ibtmp1failed at offset 3145728, 1048576 bytes should have been written, only 704512 were writt$
2018-08-04T05:25:29.519145Z 0 [ERROR] InnoDB: Error number 28 means 'No space left on device'

I could see that it is a space issue.

root@xxx:/home/user1# df -h
Filesystem                            Size  Used Avail Use% Mounted on
udev                                  477M     0  477M   0% /dev
tmpfs                                 100M   11M   89M  11% /run
/dev/mapper/server1--osticket--vg-root  8.3G  7.9G     0 100% /
tmpfs                                 497M     0  497M   0% /dev/shm
tmpfs                                 5.0M     0  5.0M   0% /run/lock
tmpfs                                 497M     0  497M   0% /sys/fs/cgroup
/dev/vda1                             472M  467M     0 100% /boot
tmpfs                                 100M     0  100M   0% /run/user/1000

From here, I could see that there was not enough space left on the virtual server /dev/mapper/server1--osticket--vg-root 8.3G 7.9G 0 100% /. And I thought on either migrating or increasing the virtual drive, but I decided to remove unnecessary files first.

So, had to clean up cache and files that were not needed:

#apt-get clean
#apt-get -f autoremove

Then, do not forget to remove the mysql corrupted log files afterwards. They would be generated again when you restart mysql

#service mysql stop
#cd /var/lib/mysql
#rm ib_logfile*
#service mysql start

Check your mysql server service and it is probably up and running

root@server1-osticket:/var/lib/mysql# service mysql status
● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2018-08-04 23:07:24 WAT; 7min ago
  Process: 1559 ExecStartPost=/usr/share/mysql/mysql-systemd-start post (code=exited, status=0/SUCCESS)
  Process: 1549 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
 Main PID: 1558 (mysqld)
    Tasks: 29
   Memory: 280.3M
      CPU: 589ms
   CGroup: /system.slice/mysql.service
           └─1558 /usr/sbin/mysqld

Aug 04 23:07:19 server1-osticket systemd[1]: Starting MySQL Community Server...
Aug 04 23:07:24 server1-osticket systemd[1]: Started MySQL Community Server.
root@server1-osticket:/var/lib/mysql#

Case closed.
I hope it helps.

I set up my first Ubuntu Server with Ubuntu 16.04, nginx, php7.0, MariaDB, nextcloud and external DynDNS using this tutorial here: Install Nextcloud 9 on Ubuntu 16.04

Everything worked fine but since I restarted the server the next day, nextcloud just shows me a blank page. After clicking through all logs of nginx, MariaDB and nextcloud, I found out that the mysql service just doesn’t start. So run service mysql start and everything worked fine again (calling nextcloud from server as well as other workstations). I just wondered that the terminal didn’t «close» the line. Like it was still working on the command. After about 5 minutes, the line «closes» and the following message appears:

«Job for mariadb.service failed because a timeout was exceeded. See
«systemctl status mariadb.service» and «journalctl -xe» for details.»

Then the clients again just get a blank page in nextcloud. When I run the command and close the terminal immediately, clients get the access as well but still loses it after 5 minutes.

I tried backing up the nextcloud, sql and run apt-get purge --auto-remove mariadb-server. Then again run the MariaDB installation steps out of the tutorial with importing the backup sql instead of creating a new one. Didn’t change everything.

Next try was update-rc.d mysql defaults and update-rc.d mysql enable. But after a restart just the blank page again. Access is only possible for 5 minutes by starting the service manual.

I also tried the BUM — BootUpManager but the service seems to be enabled. I saw you can start services out oft it manually as well. So tried it with mysql and surprise: nextcloud available for 5 minutes while BUM just hangs up.

I found mariadb.com/kb/en/mariadb/starting-and-stopping-mariadb-automatically/ as well but tried nothing of it because it seems like there is something else really wrong.

root@s1:~# systemctl status mariadb.service:

u25cf mariadb.service - MariaDB database server
   Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: 
  Drop-In: /etc/systemd/system/mariadb.service.d
           u2514u2500migrated-from-my.cnf-settings.conf
   Active: failed (Result: timeout) since Di 2016-12-06 14:52:51 CET; 55s ago
  Process: 3565 ExecStart=/usr/sbin/mysqld $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WS
  Process: 3415 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR
  Process: 3409 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START
  Process: 3405 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/ru
 Main PID: 3565 (code=exited, status=0/SUCCESS)

Dez 06 14:52:48 s1 mysqld[3565]: 2016-12-06 14:52:48 3067387712 [Note] /usr/sbin
Dez 06 14:52:48 s1 mysqld[3565]: 2016-12-06 14:52:48 3067387712 [Note] Event Sch
Dez 06 14:52:48 s1 mysqld[3565]: 2016-12-06 14:52:48 2147785536 [Note] InnoDB: F
Dez 06 14:52:48 s1 mysqld[3565]: 2016-12-06 14:52:48 3067387712 [Note] InnoDB: S
Dez 06 14:52:49 s1 mysqld[3565]: 2016-12-06 14:52:49 3067387712 [Note] InnoDB: W
Dez 06 14:52:50 s1 mysqld[3565]: 2016-12-06 14:52:50 3067387712 [Note] InnoDB: S
Dez 06 14:52:50 s1 mysqld[3565]: 2016-12-06 14:52:50 3067387712 [Note] /usr/sbin
Dez 06 14:52:51 s1 systemd[1]: Failed to start MariaDB database server.
Dez 06 14:52:51 s1 systemd[1]: mariadb.service: Unit entered failed state.
Dez 06 14:52:51 s1 systemd[1]: mariadb.service: Failed with result 'timeout'.

root@s1:~# journalctl -xe:

Dez 06 14:52:48 s1 mysqld[3565]: 2016-12-06 14:52:48 3067387712 [Note] Event Scheduler: Purging the queue. 0 events
Dez 06 14:52:48 s1 mysqld[3565]: 2016-12-06 14:52:48 2147785536 [Note] InnoDB: FTS optimize thread exiting.
Dez 06 14:52:48 s1 mysqld[3565]: 2016-12-06 14:52:48 3067387712 [Note] InnoDB: Starting shutdown...
Dez 06 14:52:49 s1 mysqld[3565]: 2016-12-06 14:52:49 3067387712 [Note] InnoDB: Waiting for page_cleaner to finish flushing of buffer po
Dez 06 14:52:50 s1 mysqld[3565]: 2016-12-06 14:52:50 3067387712 [Note] InnoDB: Shutdown completed; log sequence number 111890806
Dez 06 14:52:50 s1 mysqld[3565]: 2016-12-06 14:52:50 3067387712 [Note] /usr/sbin/mysqld: Shutdown complete
Dez 06 14:52:50 s1 audit[3648]: AVC apparmor="DENIED" operation="sendmsg" info="Failed name lookup - disconnected path" error=-13 profi
Dez 06 14:52:50 s1 kernel: audit: type=1400 audit(1481032370.973:29): apparmor="DENIED" operation="sendmsg" info="Failed name lookup - 
Dez 06 14:52:50 s1 audit[3565]: AVC apparmor="DENIED" operation="sendmsg" info="Failed name lookup - disconnected path" error=-13 profi
Dez 06 14:52:50 s1 kernel: audit: type=1400 audit(1481032370.973:30): apparmor="DENIED" operation="sendmsg" info="Failed name lookup - 
Dez 06 14:52:51 s1 systemd[1]: Failed to start MariaDB database server.
-- Subject: Unit mariadb.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit mariadb.service has failed.
-- 
-- The result is failed.
Dez 06 14:52:51 s1 systemd[1]: mariadb.service: Unit entered failed state.
Dez 06 14:52:51 s1 systemd[1]: mariadb.service: Failed with result 'timeout'.
Dez 06 14:54:54 s1 x11vnc[2665]: 06/12/2016 14:54:54 cursor_noshape_updates_clients: 1
Dez 06 14:55:16 s1 ntpd[1244]: 46.4.1.155 local addr 192.168.178.50 -> <null>
Dez 06 14:57:30 s1 ntpd[1244]: 89.238.66.98 local addr 192.168.178.50 -> <null>

Content in /ect/init.d (if useful):

#!/bin/bash
#
### BEGIN INIT INFO
# Provides:          mysql
# 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 "mysqld"
#                    and its wrapper script "mysqld_safe".
### END INIT INFO
#
set -e
set -u
${DEBIAN_SCRIPT_DEBUG:+ set -v -x}

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

. /lib/lsb/init-functions

SELF=$(cd $(dirname $0); pwd -P)/$(basename $0)
CONF=/etc/mysql/my.cnf
MYADMIN="/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf"

# priority can be overriden and "-s" adds output to stderr
ERR_LOGGER="logger -p daemon.err -t /etc/init.d/mysql -i"

# 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/

# Source default config file.
[ -r /etc/default/mariadb ] && . /etc/default/mariadb

## Fetch a particular option from mysql's invocation.
#
# Usage: void mysqld_get_param option
mysqld_get_param() {
    /usr/sbin/mysqld --print-defaults 
        | tr " " "n" 
        | grep -- "--$1" 
        | tail -n 1 
        | cut -d= -f2
}

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

  # check for diskspace shortage
  datadir=`mysqld_get_param datadir`
  if LC_ALL=C BLOCKSIZE= df --portability $datadir/. | tail -n 1 | awk '{ exit ($4>4096) }'; then
    log_failure_msg "$0: ERROR: The partition with $datadir is too full!"
    echo                "ERROR: The partition with $datadir is too full!" | $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 mysqld in the process list
#
# Usage: boolean mysqld_status [check_alive|check_dead] [warn|nowarn]
mysqld_status () {
    ping_output=`$MYADMIN ping 2>&1`; ping_alive=$(( ! $? ))

    ps_alive=0
    pidfile=`mysqld_get_param pid-file`
    if [ -f "$pidfile" ] && ps `cat $pidfile` >/dev/null 2>&1; then ps_alive=1; fi

    if [ "$1" = "check_alive"  -a  $ping_alive = 1 ] ||
       [ "$1" = "check_dead"   -a  $ping_alive = 0  -a  $ps_alive = 0 ]; then
    return 0 # EXIT_SUCCESS
    else
    if [ "$2" = "warn" ]; then
        echo -e "$ps_alive processes alive and '$MYADMIN ping' resulted inn$ping_outputn" | $ERR_LOGGER -p daemon.debug
    fi
    return 1 # EXIT_FAILURE
    fi
}

#
# main()
#

case "${1:-''}" in
  'start')
    sanity_checks;
    # Start daemon
    log_daemon_msg "Starting MariaDB database server" "mysqld"
    if mysqld_status check_alive nowarn; then
       log_progress_msg "already running"
       log_end_msg 0
    else
        # Could be removed during boot
        test -e /var/run/mysqld || install -m 755 -o mysql -g root -d /var/run/mysqld

        # Start MariaDB! 
        /usr/bin/mysqld_safe "${@:2}" > /dev/null 2>&1 &

        # 6s was reported in #352070 to be too little
        for i in $(seq 1 "${MYSQLD_STARTUP_TIMEOUT:-60}"); do
                sleep 1
            if mysqld_status check_alive nowarn ; then break; fi
        log_progress_msg "."
        done
        if mysqld_status check_alive warn; then
                log_end_msg 0
            # Now start mysqlcheck or whatever the admin wants.
            output=$(/etc/mysql/debian-start)
        [ -n "$output" ] && log_action_msg "$output"
        else
            log_end_msg 1
        log_failure_msg "Please take a look at the syslog"
        fi
    fi
    ;;

  'stop')
    # * 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 "Stopping MariaDB database server" "mysqld"
    if ! mysqld_status check_dead nowarn; then
      set +e
      shutdown_out=`$MYADMIN shutdown 2>&1`; r=$?
      set -e
      if [ "$r" -ne 0 ]; then
        log_end_msg 1
        [ "$VERBOSE" != "no" ] && log_failure_msg "Error: $shutdown_out"
        log_daemon_msg "Killing MariaDB database server by signal" "mysqld"
        killall -15 mysqld
            server_down=
        for i in `seq 1 600`; do
              sleep 1
              if mysqld_status check_dead nowarn; then server_down=1; break; fi
            done
          if test -z "$server_down"; then killall -9 mysqld; fi
      fi
        fi

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

  'restart')
    set +e; $SELF stop; set -e
    $SELF start 
    ;;

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

  'status')
    if mysqld_status check_alive nowarn; then
      log_action_msg "$($MYADMIN version)"
    else
      log_action_msg "MariaDB is stopped."
      exit 3
    fi
    ;;

  'bootstrap')
    # Bootstrap the cluster, start the first node
    # that initiates the cluster
    log_daemon_msg "Bootstrapping the cluster" "mysqld"
    $SELF start "${@:2}" --wsrep-new-cluster
    ;;

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

Unfortunately, Google can’t help me. I tried to explain as much as I can maybe this helps you in helping me. Thanks a lot!

Following error is being showed while checking the status for my-sql .

OS: Ubuntu 18.04.3

Mysql: mysql Ver 14.14 Distrib 5.7.27, for Linux (x86_64) using EditLine wrapper

mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; bad; vendor preset: enabled)
   Active: failed (Result: exit-code) since Sat 2019-08-31 08:27:11 CEST; 1min 12s ago
  Process: 18000 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=1/FAILURE)

Aug 31 08:27:11 myserver systemd[1]: mysql.service: Control process exited, code=exited status=1
Aug 31 08:27:11 myserver systemd[1]: mysql.service: Failed with result 'exit-code'.
Aug 31 08:27:11 myserver systemd[1]: Failed to start MySQL Community Server.
Aug 31 08:27:11 myserver systemd[1]: mysql.service: Service hold-off time over, scheduling restart.
Aug 31 08:27:11 myserver systemd[1]: mysql.service: Scheduled restart job, restart counter is at 5.
Aug 31 08:27:11 myserver systemd[1]: Stopped MySQL Community Server.
Aug 31 08:27:11 myserver systemd[1]: mysql.service: Start request repeated too quickly.
Aug 31 08:27:11 myserver systemd[1]: mysql.service: Failed with result 'exit-code'.
Aug 31 08:27:11 myserver systemd[1]: Failed to start MySQL Community Server.

I tried to start using mysqld command which ended with following error

mysqld: Error on realpath() on '/var/lib/mysql-files' (Error 2 - No such file or directory)
2019-08-31T12:51:57.596969Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2019-08-31T12:51:57.597359Z 0 [ERROR] Failed to access directory for --secure-file-priv. Please make sure that directory exists and is accessible by MySQL Server. Supplied value : /var/lib/mysql-files
2019-08-31T12:51:57.597485Z 0 [ERROR] Aborting

2019-08-31T12:51:57.597607Z 0 [Note] Binlog end

my.cnf

#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
#
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html

# This will be passed to all mysql clients
# It has been reported that passwords should be enclosed with ticks/quotes
# escpecially if they contain "#" chars...
# Remember to edit /etc/mysql/debian.cnf when changing the socket location.

# Here is entries for some specific programs
# The following values assume you have at least 32M ram

asked Aug 31, 2019 at 6:39

Joel Deleep's user avatar

Joel DeleepJoel Deleep

1351 gold badge1 silver badge8 bronze badges

3

The errors you got on the console when running mysqld directly include:

2019-08-31T12:51:57.597359Z 0 [ERROR] Failed to access directory for —secure-file-priv. Please make sure that directory exists and is accessible by MySQL Server. Supplied value : /var/lib/mysql-files

That’s your problem.

To resolve it, first check the user that your mysqld is attempting to run as; this will be the user «mysql» in a default Debian install (I assume it should be the same for Ubuntu); to verify this, check /etc/mysql/my.cnf and look for a «user = xxx» line.

Once you know what user mysqld is trying to run as, check that the directory /var/lib/mysql-files exists (sudo mkdir /var/lib/mysql-files if it doesn’t) and is owned by the user mysqld runs as (sudo chown mysql /var/lib/mysql-files if it isn’t; replace «mysql» in the chown command with the correct user name if you’re configured to run as a different user).

Then try sudo mysqld again and you should either get a successful mysqld startup, or (if there are other problems with your setup) a new and different error message.

answered Sep 1, 2019 at 8:24

Dave Sherohman's user avatar

Dave SherohmanDave Sherohman

1,7391 gold badge12 silver badges16 bronze badges

3

For me, I ran some cache clearing operations to free up space using tools like Stacer, and then MySQL started showing problems.

Use this to get some clues first

grep mysql /var/log/syslog | grep ERROR

If the error says, Could not open file ‘/var/log/mysql/error.log’ for error logging: No such file or directory
then clearly, the log files were cleaned up.

Use this to first create the MySQL directory and grant all permissions for MySQL to use that folder.

> sudo mkdir /var/log/mysql
> sudo chown -R mysql:mysql /var/log/mysql
> sudo service mysql restart

This solution has nothing to do with the my.cnf files and is completely safe on data.

answered Jul 15, 2021 at 8:27

Raunak Ritesh's user avatar

1

Check for below.

  1. Check if file is exists.
  2. Check file permissions.
  3. If Selinux is enabled fix it with below.

    $ semanage fcontext -a -e /var/lib/mysql /var/lib/mysql-files

    $ restorecon -R /var/lib/mysql-files

    Make sure /var/lib/mysql is empty, Then Try to start server:

    $ service mysqld start

Check this link also it may help https://askubuntu.com/questions/835541/mysql-install-db-on-ubuntu-16-04

answered Sep 3, 2019 at 3:52

asktyagi's user avatar

asktyagiasktyagi

2,6611 gold badge7 silver badges23 bronze badges

See «systemctl status mysql.service» and «journalctl -xeu mysql.service» for details.

goingUp ★★★★★

(10.03.23 22:32:47 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от goingUp 10.03.23 22:32:47 MSK

~# systemctl status mysql.service
mysql.service - MySQL Community Server
     Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset:>
     Active: activating (start) since Fri 2023-03-10 19:40:39 UTC; 14s ago
    Process: 65885 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=>
   Main PID: 65893 (mysqld)
     Status: "Server startup in progress"
      Tasks: 13 (limit: 9263)
     Memory: 254.9M
        CPU: 454ms
     CGroup: /system.slice/mysql.service
             └─65893 /usr/sbin/mysqld


~# journalctl -xeu mysql.service
Mar 10 19:40:39 vps-ad2a411e systemd[1]: mysql.service: Scheduled restart job, >
░░ Subject: Automatic restarting of a unit has been scheduled
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ Automatic restarting of the unit mysql.service has been scheduled, as the re>
░░ the configured Restart= setting for the unit.
Mar 10 19:40:39 vps-ad2a411e systemd[1]: Stopped MySQL Community Server.
░░ Subject: A stop job for unit mysql.service has finished
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ A stop job for unit mysql.service has finished.
░░
░░ The job identifier is 12696 and the job result is done.
Mar 10 19:40:39 vps-ad2a411e systemd[1]: Starting MySQL Community Server...
░░ Subject: A start job for unit mysql.service has begun execution
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░
░░ A start job for unit mysql.service has begun execution.
░░
░░ The job identifier is 12696.

sergmar

(10.03.23 22:43:25 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от easybreezy 10.03.23 23:06:41 MSK

~# systemctl start mysqld
Failed to start mysqld.service: Unit mysqld.service not found.

sergmar

(10.03.23 23:24:09 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от sergmar 10.03.23 22:43:25 MSK

Ответ на:

комментарий
от sergmar 10.03.23 23:24:09 MSK

Ответ на:

комментарий
от goingUp 10.03.23 23:26:26 MSK

2023-03-10T17:46:42.468414Z 0 [System] [MY-013169] [Server] /usr/sbin/mysqld (mysqld 8.0.32-0ubuntu0.22.04.2) initializing of server in progress as process 49524
2023-03-10T17:46:42.476793Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-03-10T17:46:42.799269Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-03-10T17:46:45.728425Z 6 [Warning] [MY-010453] [Server] root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option.
2023-03-10T17:46:47.158006Z 6 [System] [MY-013172] [Server] Received SHUTDOWN from user boot. Shutting down mysqld (Version: 8.0.32-0ubuntu0.22.04.2).
2023-03-10T17:46:53.281544Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.32-0ubuntu0.22.04.2) starting as process 49572
2023-03-10T17:46:53.320129Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-03-10T17:46:54.405634Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-03-10T17:46:55.324352Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2023-03-10T17:46:55.324422Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
2023-03-10T17:46:55.333616Z 0 [Warning] [MY-011810] [Server] Insecure configuration for --pid-file: Location '/tmp' in the path is accessible to all OS users. Consider choosing a different>
2023-03-10T17:46:55.364653Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Socket: /var/run/mysqld/mysqlx.sock
2023-03-10T17:46:55.364744Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.32-0ubuntu0.22.04.2'  socket: '/tmp/tmp.l9nVA78umq/mysqld.sock'  port: 0 >
2023-03-10T17:46:55.406573Z 0 [System] [MY-013172] [Server] Received SHUTDOWN from user <via user signal>. Shutting down mysqld (Version: 8.0.32-0ubuntu0.22.04.2).
2023-03-10T17:46:56.812934Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.32-0ubuntu0.22.04.2)  (Ubuntu).
2023-03-10T17:46:57.879435Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.32-0ubuntu0.22.04.2) starting as process 49645
2023-03-10T17:46:57.891045Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-03-10T17:46:58.036309Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-03-10T17:46:58.286112Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2023-03-10T17:46:58.286174Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
2023-03-10T17:46:58.292943Z 0 [Warning] [MY-011810] [Server] Insecure configuration for --pid-file: Location '/tmp' in the path is accessible to all OS users. Consider choosing a different>
2023-03-10T17:46:58.325522Z 7 [System] [MY-013172] [Server] Received SHUTDOWN from user boot. Shutting down mysqld (Version: 8.0.32-0ubuntu0.22.04.2).
2023-03-10T17:46:58.331012Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: '127.0.0.1' port: 33060, socket: /var/run/mysqld/mysqlx.sock
2023-03-10T17:46:59.892933Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.32-0ubuntu0.22.04.2)  (Ubuntu).
2023-03-10T17:47:01.388548Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.32-0ubuntu0.22.04.2) starting as process 49785
2023-03-10T17:47:01.398924Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-03-10T17:47:01.631829Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-03-10T17:47:01.990937Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2023-03-10T17:47:01.990992Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
2023-03-10T17:47:02.029474Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: '127.0.0.1' port: 33060, socket: /var/run/mysqld/mysqlx.sock
2023-03-10T17:47:02.029651Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.32-0ubuntu0.22.04.2'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  >
2023-03-10T18:27:46.969190Z 0 [System] [MY-013172] [Server] Received SHUTDOWN from user <via user signal>. Shutting down mysqld (Version: 8.0.32-0ubuntu0.22.04.2).
2023-03-10T18:27:48.971857Z 0 [Warning] [MY-010909] [Server] /usr/sbin/mysqld: Forcing close of thread 10  user: 'root'.
2023-03-10T18:27:48.974149Z 0 [Warning] [MY-010909] [Server] /usr/sbin/mysqld: Forcing close of thread 13  user: 'root'.
2023-03-10T18:27:49.815070Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.32-0ubuntu0.22.04.2)  (Ubuntu).
2023-03-10T18:28:03.963087Z 0 [Warning] [MY-010143] [Server] Ignoring user change to 'root' because the user was set to 'mysql' earlier on the command line
2023-03-10T18:28:03.966992Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.32-0ubuntu0.22.04.2) starting as process 61673
2023-03-10T18:28:03.979047Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-03-10T18:28:04.193102Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-03-10T18:28:04.386252Z 0 [ERROR] [MY-011292] [Server] Plugin mysqlx reported: 'Preparation of I/O interfaces failed, X Protocol won't be accessible'
2023-03-10T18:28:04.386322Z 0 [ERROR] [MY-011300] [Server] Plugin mysqlx reported: 'Setup of socket: '/var/run/mysqld/mysqlx.sock' failed, can't create lock file /var/run/mysqld/mysqlx.soc>
2023-03-10T18:28:04.531089Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2023-03-10T18:28:04.531145Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
2023-03-10T18:28:04.538168Z 0 [ERROR] [MY-010273] [Server] Could not create unix socket lock file /var/run/mysqld/mysqld.sock.lock.
2023-03-10T18:28:04.538230Z 0 [ERROR] [MY-010268] [Server] Unable to setup unix socket lock file.

sergmar

(10.03.23 23:28:07 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от easybreezy 10.03.23 23:26:57 MSK

Ответ на:

комментарий
от sergmar 10.03.23 23:29:19 MSK

Ответ на:

комментарий
от easybreezy 10.03.23 23:29:37 MSK

Вроде бы запустился mysqld. Ни какую ошибку и ни какое сообщение не выдал. Просто курсор перевелся на новую строку.

sergmar

(10.03.23 23:36:33 MSK)

  • Ссылка

Ответ на:

комментарий
от sergmar 10.03.23 23:28:07 MSK

Проверить наличие директории /var/run/mysqld, если нет — создать, владельцем установить mysql:mysql. Если есть — проверить права (см. п.1).

kravzo ★★

(10.03.23 23:45:00 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от kravzo 10.03.23 23:45:00 MSK

Все так и есть.
Директория /var/run/mysqld присутствует. Владельцем является mysql:mysql.

sergmar

(10.03.23 23:47:39 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от sergmar 10.03.23 23:47:39 MSK

Ответ на:

комментарий
от ya-betmen 10.03.23 23:50:14 MSK

~# tail /var/log/mysql/error.log
2023-03-10T20:57:01.193444Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibda                                                                                                             ta1 error: 11
2023-03-10T20:57:02.193708Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibda                                                                                                             ta1 error: 11
2023-03-10T20:57:03.194064Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibda                                                                                                             ta1 error: 11
2023-03-10T20:57:04.194449Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibda                                                                                                             ta1 error: 11
2023-03-10T20:57:05.194755Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibda                                                                                                             ta1 error: 11
2023-03-10T20:57:06.195007Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibda                                                                                                             ta1 error: 11
2023-03-10T20:57:07.195212Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibda                                                                                                             ta1 error: 11
2023-03-10T20:57:08.195455Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibda                                                                                                             ta1 error: 11
2023-03-10T20:57:09.195811Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibda                                                                                                             ta1 error: 11
2023-03-10T20:57:10.196118Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibda                                                                                                             ta1 error: 11

sergmar

(10.03.23 23:57:48 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от sergmar 10.03.23 23:57:48 MSK

Ответ на:

комментарий
от ya-betmen 11.03.23 00:02:11 MSK

~# ps ax | grep -i mysql
  68217 ?        Ssl    0:01 /usr/sbin/mysqld
  68270 pts/0    S+     0:00 grep --color=auto -i mysql

Частино разобрался.
Убил все процессы связанные с mysql, и mysql запустился.
Но теперь проблему в том что не могу запустить ~# mysql.

~# mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO.)

С чем это связанно?
Пароль для root при установке mysql я присвоил.

sergmar

(11.03.23 00:36:33 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от sergmar 11.03.23 00:36:33 MSK

Ответ на:

комментарий
от easybreezy 11.03.23 00:44:51 MSK

~# mysql -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

sergmar

(11.03.23 01:08:32 MSK)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от sergmar 11.03.23 01:08:32 MSK

И что, пароль не подходит? Ну сбрось его.

Интересно зачем ты его ставил, в убунте вроде по умолчанию через auth socket работает.

  • Ссылка

Ответ на:

комментарий
от easybreezy 10.03.23 23:29:37 MSK

Отличная медвежья услуга. Теперь точно не запустится, так как все пермишены и овнеры файлов хрен знает какие.

Не делай так больше.

adn ★★★

(11.03.23 02:51:49 MSK)



Последнее исправление: adn 11.03.23 02:51:59 MSK
(всего

исправлений: 1)

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от adn 11.03.23 02:51:49 MSK

Сделает chown, какие проблемы. Но я сильно сомневаюсь, что «все пермишены и овнеры файлов хрен знает какие.».

upd: вообще я конечно ошибся. Но проверил на 20.04, пермишны не меняются, mysqld просто не запустится. Запустится, если сервис уже работает и сокет существует (точнее, /var/run/mysqld).

В любом случае совет вредный, ты прав.

  • Показать ответ
  • Ссылка

Ответ на:

комментарий
от easybreezy 11.03.23 03:16:05 MSK

После сборса пароля mysql запустился корректно.
Про какие пермишны вы говорите? Нужно ли теперь что то еще делать для корреткной рабоыти и безопасности сервера?

sergmar

(11.03.23 20:04:24 MSK)

  • Ссылка

In my case, it was a space issue.
Check if you have enough space left.

from /var/log/mysql/error.log I got some hints from two lines:

2018-08-04T05:25:29.519139Z 0 [ERROR] InnoDB: Write to file ./ibtmp1failed at offset 3145728, 1048576 bytes should have been written, only 704512 were writt$
2018-08-04T05:25:29.519145Z 0 [ERROR] InnoDB: Error number 28 means 'No space left on device'

I could see that it is a space issue.

root@xxx:/home/user1# df -h
Filesystem                            Size  Used Avail Use% Mounted on
udev                                  477M     0  477M   0% /dev
tmpfs                                 100M   11M   89M  11% /run
/dev/mapper/server1--osticket--vg-root  8.3G  7.9G     0 100% /
tmpfs                                 497M     0  497M   0% /dev/shm
tmpfs                                 5.0M     0  5.0M   0% /run/lock
tmpfs                                 497M     0  497M   0% /sys/fs/cgroup
/dev/vda1                             472M  467M     0 100% /boot
tmpfs                                 100M     0  100M   0% /run/user/1000

From here, I could see that there was not enough space left on the virtual server /dev/mapper/server1--osticket--vg-root 8.3G 7.9G 0 100% /. And I thought on either migrating or increasing the virtual drive, but I decided to remove unnecessary files first.

So, had to clean up cache and files that were not needed:

#apt-get clean
#apt-get -f autoremove

Then, do not forget to remove the mysql corrupted log files afterwards. They would be generated again when you restart mysql

#service mysql stop
#cd /var/lib/mysql
#rm ib_logfile*
#service mysql start

Check your mysql server service and it is probably up and running

root@server1-osticket:/var/lib/mysql# service mysql status
● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2018-08-04 23:07:24 WAT; 7min ago
  Process: 1559 ExecStartPost=/usr/share/mysql/mysql-systemd-start post (code=exited, status=0/SUCCESS)
  Process: 1549 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
 Main PID: 1558 (mysqld)
    Tasks: 29
   Memory: 280.3M
      CPU: 589ms
   CGroup: /system.slice/mysql.service
           └─1558 /usr/sbin/mysqld

Aug 04 23:07:19 server1-osticket systemd[1]: Starting MySQL Community Server...
Aug 04 23:07:24 server1-osticket systemd[1]: Started MySQL Community Server.
root@server1-osticket:/var/lib/mysql#

Case closed.
I hope it helps.

I set up my first Ubuntu Server with Ubuntu 16.04, nginx, php7.0, MariaDB, nextcloud and external DynDNS using this tutorial here: Install Nextcloud 9 on Ubuntu 16.04

Everything worked fine but since I restarted the server the next day, nextcloud just shows me a blank page. After clicking through all logs of nginx, MariaDB and nextcloud, I found out that the mysql service just doesn’t start. So run service mysql start and everything worked fine again (calling nextcloud from server as well as other workstations). I just wondered that the terminal didn’t «close» the line. Like it was still working on the command. After about 5 minutes, the line «closes» and the following message appears:

«Job for mariadb.service failed because a timeout was exceeded. See
«systemctl status mariadb.service» and «journalctl -xe» for details.»

Then the clients again just get a blank page in nextcloud. When I run the command and close the terminal immediately, clients get the access as well but still loses it after 5 minutes.

I tried backing up the nextcloud, sql and run apt-get purge --auto-remove mariadb-server. Then again run the MariaDB installation steps out of the tutorial with importing the backup sql instead of creating a new one. Didn’t change everything.

Next try was update-rc.d mysql defaults and update-rc.d mysql enable. But after a restart just the blank page again. Access is only possible for 5 minutes by starting the service manual.

I also tried the BUM — BootUpManager but the service seems to be enabled. I saw you can start services out oft it manually as well. So tried it with mysql and surprise: nextcloud available for 5 minutes while BUM just hangs up.

I found mariadb.com/kb/en/mariadb/starting-and-stopping-mariadb-automatically/ as well but tried nothing of it because it seems like there is something else really wrong.

root@s1:~# systemctl status mariadb.service:

u25cf mariadb.service - MariaDB database server
   Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: 
  Drop-In: /etc/systemd/system/mariadb.service.d
           u2514u2500migrated-from-my.cnf-settings.conf
   Active: failed (Result: timeout) since Di 2016-12-06 14:52:51 CET; 55s ago
  Process: 3565 ExecStart=/usr/sbin/mysqld $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WS
  Process: 3415 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR
  Process: 3409 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START
  Process: 3405 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/ru
 Main PID: 3565 (code=exited, status=0/SUCCESS)

Dez 06 14:52:48 s1 mysqld[3565]: 2016-12-06 14:52:48 3067387712 [Note] /usr/sbin
Dez 06 14:52:48 s1 mysqld[3565]: 2016-12-06 14:52:48 3067387712 [Note] Event Sch
Dez 06 14:52:48 s1 mysqld[3565]: 2016-12-06 14:52:48 2147785536 [Note] InnoDB: F
Dez 06 14:52:48 s1 mysqld[3565]: 2016-12-06 14:52:48 3067387712 [Note] InnoDB: S
Dez 06 14:52:49 s1 mysqld[3565]: 2016-12-06 14:52:49 3067387712 [Note] InnoDB: W
Dez 06 14:52:50 s1 mysqld[3565]: 2016-12-06 14:52:50 3067387712 [Note] InnoDB: S
Dez 06 14:52:50 s1 mysqld[3565]: 2016-12-06 14:52:50 3067387712 [Note] /usr/sbin
Dez 06 14:52:51 s1 systemd[1]: Failed to start MariaDB database server.
Dez 06 14:52:51 s1 systemd[1]: mariadb.service: Unit entered failed state.
Dez 06 14:52:51 s1 systemd[1]: mariadb.service: Failed with result 'timeout'.

root@s1:~# journalctl -xe:

Dez 06 14:52:48 s1 mysqld[3565]: 2016-12-06 14:52:48 3067387712 [Note] Event Scheduler: Purging the queue. 0 events
Dez 06 14:52:48 s1 mysqld[3565]: 2016-12-06 14:52:48 2147785536 [Note] InnoDB: FTS optimize thread exiting.
Dez 06 14:52:48 s1 mysqld[3565]: 2016-12-06 14:52:48 3067387712 [Note] InnoDB: Starting shutdown...
Dez 06 14:52:49 s1 mysqld[3565]: 2016-12-06 14:52:49 3067387712 [Note] InnoDB: Waiting for page_cleaner to finish flushing of buffer po
Dez 06 14:52:50 s1 mysqld[3565]: 2016-12-06 14:52:50 3067387712 [Note] InnoDB: Shutdown completed; log sequence number 111890806
Dez 06 14:52:50 s1 mysqld[3565]: 2016-12-06 14:52:50 3067387712 [Note] /usr/sbin/mysqld: Shutdown complete
Dez 06 14:52:50 s1 audit[3648]: AVC apparmor="DENIED" operation="sendmsg" info="Failed name lookup - disconnected path" error=-13 profi
Dez 06 14:52:50 s1 kernel: audit: type=1400 audit(1481032370.973:29): apparmor="DENIED" operation="sendmsg" info="Failed name lookup - 
Dez 06 14:52:50 s1 audit[3565]: AVC apparmor="DENIED" operation="sendmsg" info="Failed name lookup - disconnected path" error=-13 profi
Dez 06 14:52:50 s1 kernel: audit: type=1400 audit(1481032370.973:30): apparmor="DENIED" operation="sendmsg" info="Failed name lookup - 
Dez 06 14:52:51 s1 systemd[1]: Failed to start MariaDB database server.
-- Subject: Unit mariadb.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit mariadb.service has failed.
-- 
-- The result is failed.
Dez 06 14:52:51 s1 systemd[1]: mariadb.service: Unit entered failed state.
Dez 06 14:52:51 s1 systemd[1]: mariadb.service: Failed with result 'timeout'.
Dez 06 14:54:54 s1 x11vnc[2665]: 06/12/2016 14:54:54 cursor_noshape_updates_clients: 1
Dez 06 14:55:16 s1 ntpd[1244]: 46.4.1.155 local addr 192.168.178.50 -> <null>
Dez 06 14:57:30 s1 ntpd[1244]: 89.238.66.98 local addr 192.168.178.50 -> <null>

Content in /ect/init.d (if useful):

#!/bin/bash
#
### BEGIN INIT INFO
# Provides:          mysql
# 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 "mysqld"
#                    and its wrapper script "mysqld_safe".
### END INIT INFO
#
set -e
set -u
${DEBIAN_SCRIPT_DEBUG:+ set -v -x}

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

. /lib/lsb/init-functions

SELF=$(cd $(dirname $0); pwd -P)/$(basename $0)
CONF=/etc/mysql/my.cnf
MYADMIN="/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf"

# priority can be overriden and "-s" adds output to stderr
ERR_LOGGER="logger -p daemon.err -t /etc/init.d/mysql -i"

# 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/

# Source default config file.
[ -r /etc/default/mariadb ] && . /etc/default/mariadb

## Fetch a particular option from mysql's invocation.
#
# Usage: void mysqld_get_param option
mysqld_get_param() {
    /usr/sbin/mysqld --print-defaults 
        | tr " " "n" 
        | grep -- "--$1" 
        | tail -n 1 
        | cut -d= -f2
}

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

  # check for diskspace shortage
  datadir=`mysqld_get_param datadir`
  if LC_ALL=C BLOCKSIZE= df --portability $datadir/. | tail -n 1 | awk '{ exit ($4>4096) }'; then
    log_failure_msg "$0: ERROR: The partition with $datadir is too full!"
    echo                "ERROR: The partition with $datadir is too full!" | $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 mysqld in the process list
#
# Usage: boolean mysqld_status [check_alive|check_dead] [warn|nowarn]
mysqld_status () {
    ping_output=`$MYADMIN ping 2>&1`; ping_alive=$(( ! $? ))

    ps_alive=0
    pidfile=`mysqld_get_param pid-file`
    if [ -f "$pidfile" ] && ps `cat $pidfile` >/dev/null 2>&1; then ps_alive=1; fi

    if [ "$1" = "check_alive"  -a  $ping_alive = 1 ] ||
       [ "$1" = "check_dead"   -a  $ping_alive = 0  -a  $ps_alive = 0 ]; then
    return 0 # EXIT_SUCCESS
    else
    if [ "$2" = "warn" ]; then
        echo -e "$ps_alive processes alive and '$MYADMIN ping' resulted inn$ping_outputn" | $ERR_LOGGER -p daemon.debug
    fi
    return 1 # EXIT_FAILURE
    fi
}

#
# main()
#

case "${1:-''}" in
  'start')
    sanity_checks;
    # Start daemon
    log_daemon_msg "Starting MariaDB database server" "mysqld"
    if mysqld_status check_alive nowarn; then
       log_progress_msg "already running"
       log_end_msg 0
    else
        # Could be removed during boot
        test -e /var/run/mysqld || install -m 755 -o mysql -g root -d /var/run/mysqld

        # Start MariaDB! 
        /usr/bin/mysqld_safe "${@:2}" > /dev/null 2>&1 &

        # 6s was reported in #352070 to be too little
        for i in $(seq 1 "${MYSQLD_STARTUP_TIMEOUT:-60}"); do
                sleep 1
            if mysqld_status check_alive nowarn ; then break; fi
        log_progress_msg "."
        done
        if mysqld_status check_alive warn; then
                log_end_msg 0
            # Now start mysqlcheck or whatever the admin wants.
            output=$(/etc/mysql/debian-start)
        [ -n "$output" ] && log_action_msg "$output"
        else
            log_end_msg 1
        log_failure_msg "Please take a look at the syslog"
        fi
    fi
    ;;

  'stop')
    # * 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 "Stopping MariaDB database server" "mysqld"
    if ! mysqld_status check_dead nowarn; then
      set +e
      shutdown_out=`$MYADMIN shutdown 2>&1`; r=$?
      set -e
      if [ "$r" -ne 0 ]; then
        log_end_msg 1
        [ "$VERBOSE" != "no" ] && log_failure_msg "Error: $shutdown_out"
        log_daemon_msg "Killing MariaDB database server by signal" "mysqld"
        killall -15 mysqld
            server_down=
        for i in `seq 1 600`; do
              sleep 1
              if mysqld_status check_dead nowarn; then server_down=1; break; fi
            done
          if test -z "$server_down"; then killall -9 mysqld; fi
      fi
        fi

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

  'restart')
    set +e; $SELF stop; set -e
    $SELF start 
    ;;

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

  'status')
    if mysqld_status check_alive nowarn; then
      log_action_msg "$($MYADMIN version)"
    else
      log_action_msg "MariaDB is stopped."
      exit 3
    fi
    ;;

  'bootstrap')
    # Bootstrap the cluster, start the first node
    # that initiates the cluster
    log_daemon_msg "Bootstrapping the cluster" "mysqld"
    $SELF start "${@:2}" --wsrep-new-cluster
    ;;

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

Unfortunately, Google can’t help me. I tried to explain as much as I can maybe this helps you in helping me. Thanks a lot!

MySQL или MariaDB — это один из самых популярных движков баз данных, который используется для обеспечения работы большинства веб-сайтов в интернете, а также множества других проектов.

Иногда случается, что из-за после изменения настроек или по какой-либо другой причине mysql не запускается. Это довольно серьезная проблема, особенно, когда такая ситуация случается на сервере публичного проекта. В этой статье мы рассмотрим основные причины почему может возникать такая проблема, а также пути решения. В качестве примера будет использоваться Mariadb и Ubuntu.

Если вы используете systemd для запуска сервисов, то получите такую ошибку:

failed to start mysql server или job for mysql failed because the control proccess exited

Из сообщения понято только то что что-то пошло не так, но что именно неизвестно. Чаще всего проблемы в работе MySQL могут вызвать такие причины:

  • Синтаксические ошибки в конфигурационном файле;
  • Неверные настройки;
  • Недостаточное количество оперативной памяти на сервере;
  • Проблемы с правами доступа;
  • Сетевой порт уже занят;
  • Таблицы баз данных повреждены;

Дальше мы рассмотрим основные пути решения этих проблем. Но сначала нам нужно выяснить почему не запускается программа. Гадать на кофейной гуще и перебирать все возможные методы решения можно очень долго, самым эффективным решением будет посмотреть какие ошибки выдает сама программа.

Первым делом, если вы меняли настройки в конфигурационном файле надо проверить его на ошибки. Встроенной утилиты для таких целей нет, но можно запустить mysql daemon с опцией —help:

/usr/sbin/mysqld --help --verbose

В начале вывода будут представлены обнаруженные в основном конфигурационном файле ошибки. Например, здесь я специально добавил несуществующую переменную. Вам остается только исправить ошибки и перезапустить mysql:

systemctl restart mariadb

Если же это не сработало и вы все еще получаете ошибку, посмотрите лог загрузки systemd для этого сервиса:

systemctl status -l mariadb

Иногда здесь тоже можно найти полезную информацию, но в данном случае ничего нет. Следующий шаг — просмотр лога mysql. Если лог еще не включен, включаем его добавив такую строчку в /etc/mysql/my.cnf в секцию [mysqld]:

sudo vi /etc/mysql/my.cnf

[mysqld]
log-error=/var/log/mysql/error.log

Затем снова пытаемся запустить сервис и смотрим на появившиеся в логе ошибки:

tail -f /var/log/mysql/error.log

Здесь вы увидите ошибки, которые мешают запустить mysql. Здесь надо искать слова: Fail, Error, Warning, Aborted и так далее. Вам остается только их исправить. Исправить проблемы с синтаксисом, убрать опции, которые потребляют слишком много памяти и исправить другие проблемы. А теперь рассмотрим несколько распространенных проблем.

1. Изменение размера буфера innodb

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

sudo systemctl stop mariadb

Затем удалите старые логи innodb или просто их переименуйте:

sudo mv /var/lib/mysql/ib_logfile0{,bak}
sudo mv /var/lib/mysql/ib_logfile1{,bak}

И только после этого можете снова запускать сервис, он запустится с новыми настройками размера буфера. Только будьте аккуратны с выбором размера. При слишком большом размере может не хватить памяти для запуска, так как весь буфер хранится в ОЗУ.

sudo systemctl start mariadb

2. Ошибка Permission denied

MySQL хранит файлы базы данных на диске. У движка базы данных должен быть полный доступ к папке, в которой хранятся эти файлы. По умолчанию в Ubuntu это /var/lib/mysql/. Все файлы в этой папке должны принадлежать пользователю mysql:

ls -l /var/lib/mysql/

Если это не так, исправляем командой:

sudo chown -R mysql:mysql /var/lib/mysql/

3. Ошибка Address already in use

MySQL может использовать файловый сокет Linux или же сетевой сокет, тогда база данных будет доступна другим программам на порту 3306. Если сейчас уже запущен другой процесс mysql или какой-либо другой процесс занимает этот порт вы получите ошибку Address already in use. Чтобы ее решить смотрим какой процесс использует порт:

sudo ss -lptn 'sport = :3306'

Например, здесь мы видим, что запущен другой экземпляр mysql с PID 11240. Вы можете его завершить с помощью kill:

sudo kill -TERM 11240

Теперь база данных запуститься.

4. Ошибка corrupt database page Mysql

Если mysql завершился некорректно из-за недостатка памяти или других проблем, например, проблем с файловой системой, то таблицы innodb могут быть повреждены — corrupt database page. Это происходит не так часто. При такой проблеме вы увидите такую запись в логе:

Проблема серьезная, но решаемая. В самом сообщении об ошибке система рекомендует сделать резервную копию таблиц, удалить их и создать заново из резервной копии. Но для этого должна быть запущена база данных, а она не запускается.

Нам необходимо запустить mysql в режиме восстановления, в котором все повреждения таблиц будут игнорироваться. Для этого добавляем в конфигурационный файл /etc/mariadb/my.cnf строку:

sudo vi /etc/mariadb/my.cnf

innodb_force_recovery=1

Затем запускаем mysql:

systemctl start mariadb

Ошибок не будет и сервис запуститься. Нам остается только исправить таблицы. Для этого можно воспользоваться инструментом mysqlcheck:

mysqlcheck -u root --auto-repair --all-databases

Готово. Теперь возвращаемся в конфигурационный файл и комментируем или удаляем строку innodb_force_recovery.

После этого можно перезапустить mysql и сервис будет работать в обычном режиме:

sudo systemctl restart mariadb

Выводы

В этой статье мы рассмотрели основные причины почему не запускается mysql сервер. Теперь вы сможете очень быстро с ними справиться, если столкнетесь в своей работе. А с какими еще проблемами кроме этих сталкивались вы? Какие были пути решения? Давайте дополним статью вместе, пишите в комментариях!

Creative Commons License

Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна .

On Ubuntu 12.04 I had this same problem after changing buffer sizes in /etc/mysql/my.cnf file, I think I got a little carried away. Anyway after trying to change them back to the default setting MySQL still would not start.

I tried several different methods to get it resolved, I did notice that /var/run/mysql/mysql.sock was missing. This could be an issue so you may check there and if its missing you can replace it by doing the following:

sudo touch /var/run/mysql/mysql.sock
sudo chown mysql /var/run/mysql/mysql.sock

This did NOT fix the problem for me! But it may for some.

What I had to do was completely reinstall MySQL, to do this you will need to use the sudo command. The steps to completely removing and reinstalling MySQL are as follows:

Remove MySQL

sudo apt-get --purge remove mysql-server
sudo apt-get --purge remove mysql-client
sudo apt-get --purge remove mysql-common

Optionally you may use aptitude, by replacing apt-get —purge with aptitude

Clean UP

sudo apt-get autoremove
sudo apt-get autoclean

Remove MySQL dir

sudo rm -rf /etc/mysql

Install MySQL

sudo apt-get install mysql-server mysql-client

MySQL should now be running, you can check this by doing the following:

sudo service mysql status

You should see

mysql start/running, process xxxxx

Hope this helps, and thought I might add after doing this all my databases and tables where still available, however I did have to recreate the users and passwords for those databases.

Note: If you had mysql extension for php, you will need to reinstall this too.

sudo apt-get install php5-mysql

MySQL — система управления базами данных (СУБД) с открытым исходным кодом от компании Oracle. Она была разработана и оптимизирована специально для работы веб-приложений. MySQL является неотъемлемой частью таких веб-сервисов, как Facebook, Twitter, Wikipedia, YouTube и многих других.

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

Не удаётся подключиться к локальному серверу

Одной из распространённых ошибок подключения клиента к серверу является «ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2)».

Эта ошибка означает, что на хосте не запущен сервер MySQL (mysqld) или вы указали неправильное имя файла сокета Unix или порт TCP/IP при попытке подключения.

Убедитесь, что сервер работает. Проверьте процесс с именем mysqld на хосте сервера, используя команды ps или grep, как показано ниже.

$ ps xa | grep mysqld | grep -v mysqld

Если эти команды не показывают выходных данных, то сервер БД не работает. Поэтому клиент не может подключиться к нему. Чтобы запустить сервер, выполните команду systemctl.

$ sudo systemctl start mysql        #Debian/Ubuntu
$ sudo systemctl start mysqld       #RHEL/CentOS/Fedora

Чтобы проверить состояние службы MySQL, используйте следующую команду:

$ sudo systemctl status mysql       #Debian/Ubuntu
$ sudo systemctl status mysqld      #RHEL/CentOS/Fedora

Если в результате выполнения команды произошла ошибка службы MySQL, вы можете попробовать перезапустить службу и ещё раз проверить её состояние.

$ sudo systemctl restart mysql
$ sudo systemctl status mysql

Если сервер работает (как показано) и вы по-прежнему видите эту ошибку, вам следует проверить, не заблокирован ли порт TCP/IP брандмауэром или любой другой службой блокировки портов.

Для поиска порта, который прослушивается сервером, используйте команду netstat.

$ sudo netstat -tlpn | grep "mysql"

Ещё одна похожая и часто встречающаяся ошибка подключения — «(2003) Can’t connect to MySQL server on ‘server’ (10061)». Это означает, что в сетевом соединении было отказано.

Следует проверить, работает ли в системе сервер MySQL (смотрите выше) и на тот ли порт вы подключаетесь (как найти порт, можно посмотреть выше).

Похожие частые ошибки, с которыми вы можете столкнуться при попытке подключиться к серверу MySQL:

ERROR 2003: Cannot connect to MySQL server on 'host_name' (111)
ERROR 2002: Cannot connect to local MySQL server through socket '/tmp/mysql.sock' (111)

Ошибки запрета доступа в MySQL

В MySQL учётная запись (УЗ) определяется именем пользователя и клиентским хостом, с которого пользователь может подключиться. УЗ может также иметь данные для аутентификации (например, пароль).

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

В MySQL есть возможность создавать учётные записи, позволяющие пользователям клиентских программ подключаться к серверу и получать доступ к данным. Поэтому при ошибке доступа проверьте разрешение УЗ на подключение к серверу через клиентскую программу.

Увидеть разрешённые привилегии учётной записи можно, выполнив в консоли команду SHOW GRANTS
Входим в консоль (пример для Unix, для Windows консоль можно найти в стартовом меню):

В консоли вводим команду:

> SHOW GRANTS FOR 'tecmint'@'localhost';

Дать привилегии конкретному пользователю в БД по IP-адресу можно, используя следующие команды:

> grant all privileges on *.test_db to 'tecmint'@'192.168.0.100';
> flush privileges;

Ошибки запрещённого доступа могут также возникнуть из-за проблем с подключением к MySQL (см. выше).

Потеря соединения с сервером MySQL

С этой ошибкой можно столкнуться по одной из следующих причин:

  • плохое сетевое соединение;
  • истекло время ожидания соединения;
  • размер BLOB  больше, чем max_allowed_packet.

В первом случае убедитесь, что у вас стабильное сетевое подключение (особенно, если подключаетесь удалённо).

Если проблема с тайм-аутом соединения (особенно при первоначальном соединении MySQL с сервером), увеличьте значение параметра connect_timeout.

В случае с размером BLOB нужно установить более высокое значение для max_allowed_packet в файле конфигурации /etc/my.cnf в разделах [mysqld] или [client] как показано ниже.

[mysqld]
connect_timeout=100
max_allowed_packet=500M

Если файл конфигурации недоступен, это значение можно установить с помощью следующей команды.

> SET GLOBAL connect_timeout=100;
> SET GLOBAL max_allowed_packet=524288000;

Слишком много подключений

Эта ошибка означает, что все доступные соединения используются клиентскими программами. Количество соединений (по умолчанию 151) контролируется системной переменной max_connections. Устранить проблему можно, увеличив значение переменной в файле конфигурации /etc/my.cnf.

[mysqld]
max_connections=1000

Недостаточно памяти

Если такая ошибка возникла, это может означать, что в MySQL недостаточно памяти для хранения всего результата запроса.

Сначала нужно убедиться, что запрос правильный. Если это так, то нужно выполнить одно из следующих действий:

  • если клиент MySQL используется напрямую, запустите его с ключом --quick switch, чтобы отключить кешированные результаты;
  • если вы используете драйвер MyODBC, пользовательский интерфейс (UI) имеет расширенную вкладку с опциями. Отметьте галочкой «Do not cache result» (не кешировать результат).

Также может помочь MySQL Tuner. Это полезный скрипт, который подключается к работающему серверу MySQL и даёт рекомендации по настройке для более высокой производительности.

$ sudo apt-get install mysqltuner     #Debian/Ubuntu
$ sudo yum install mysqltuner         #RHEL/CentOS/Fedora
$ mysqltuner

MySQL продолжает «падать»

Если такая проблема возникает, необходимо выяснить, заключается она в сервере или в клиенте. Обратите внимание, что многие сбои сервера вызваны повреждёнными файлами данных или индексными файлами.

Вы можете проверить состояние сервера, чтобы определить, как долго он работал.

$ sudo systemctl status mysql       #Debian/Ubuntu
$ sudo systemctl status mysqld      #RHEL/CentOS/Fedora

Чтобы узнать время безотказной работы сервера, запустите команду mysqladmin.

$ sudo mysqladmin version -p 

Кроме того, можно остановить сервер, сделать отладку MySQL и снова запустить службу. Для отображения статистики процессов MySQL во время выполнения других процессов откройте окно командной строки и введите следующее:

$ sudo mysqladmin -i 5 status

Или

$ sudo mysqladmin -i 5 -r status

Заключение

Самое важное при диагностике — понять, что именно вызвало ошибку. Следующие шаги помогут вам в этом:

  • Первый и самый важный шаг — просмотреть журналы MySQL, которые хранятся в каталоге /var/log/mysql/. Вы можете использовать утилиты командной строки вроде tail для чтения файлов журнала.
  • Если служба MySQL не запускается, проверьте её состояние с помощью systemctl. Или используйте команду journalctl (с флагом -xe) в systemd.
  • Вы также можете проверить файл системного журнала (например, /var/log/messages) на предмет обнаружения ошибок.
  • Попробуйте использовать такие инструменты, как Mytop, glances, top, ps или htop, чтобы проверить, какая программа использует весь ресурс процессора или блокирует машину. Они также помогут определить нехватку памяти, дискового пространства, файловых дескрипторов или какого-либо другого важного ресурса.
  • Если проблема в каком-либо процессе, можно попытаться его принудительно остановить, а затем запустить (при необходимости).
  • Если вы уверены, что проблемы именно на стороне сервера, можете выполнить команды: mysqladmin -u root ping или mysqladmin -u root processlist, чтобы получить от него ответ.
  • Если при подключении проблема не связана с сервером, проверьте, нормально ли работает клиент. Попробуйте получить какие-либо его выходные данные для устранения неполадок.

Перевод статьи «Useful Tips to Troubleshoot Common Errors in MySQL»

After a restart, mysql won’t start. sudo service mysql start gives start: Job failed to start and the logs are empty, so I have no idea where to start. I’m pretty sure permissions problems are taken care of.

Edit:
All disks have at least 1G of space and sh -x /etc/init.d/mysql start gives me:

+ set -e
+ basename /etc/init.d/mysql
+ INITSCRIPT=mysql
+ JOB=mysql
+ [ mysql = upstart-job ]
+ [ -z start ]
+ COMMAND=start
+ shift
+ [ -z  ]
+ ECHO=echo
+ echo Rather than invoking init scripts through /etc/init.d, use the service(8)
Rather than invoking init scripts through /etc/init.d, use the service(8)
+ echo utility, e.g. service mysql start
utility, e.g. service mysql start
+ echo

+ echo Since the script you are attempting to invoke has been converted to an
Since the script you are attempting to invoke has been converted to an
+ echo Upstart job, you may also use the start(8) utility, e.g. start mysql
Upstart job, you may also use the start(8) utility, e.g. start mysql
+ grep -q  start/
+ status mysql
+ [ -z  ]
+ [ start = stop ]
+ [ -n  ]
+ start mysql
start: Rejected send message, 1 matched rules; type="method_call", sender=":1.105" (uid=1000 pid=3208 comm="start mysql ") interface="com.ubuntu.Upstart0_6.Job" member="Start" error name="(unset)" requested_reply="0" destination="com.ubuntu.Upstart" (uid=0 pid=1 comm="/sbin/init")

asked Jan 29, 2012 at 21:23

Owen's user avatar

OwenOwen

1891 gold badge1 silver badge4 bronze badges

4

This message comes from the service script, not from mysql. So you have to look at the script and figure where/why it fails.

Do that by calling sh -x /etc/init.d/mysqld start.

note: on some questions, like this one, I don’t see any «add comment». I only have the option to add an answer. How can I just add a comment ?

Nils's user avatar

Nils

7,6773 gold badges33 silver badges71 bronze badges

answered Jan 29, 2012 at 21:35

Gregory MOUSSAT's user avatar

Gregory MOUSSATGregory MOUSSAT

1,6452 gold badges25 silver badges48 bronze badges

2

Same issue here, for me the reason was, that the my.cnf file has been moved from /etc/my.cnf to /etc/mysql/my.cnf, but there still was a «dead» symlink pointing to /etc/my.cnf.

Check if /etc/mysql/my.cnf is a symlink:

user@machine:~ $ ls -l /etc/mysql/my.cnf
lrwxrwxrwx 1 root root 9 Jan 11  2011 /etc/mysql/my.cnf -> ../my.cnf

If it is a symlink, check if the target file exists. If not, remove the symlink and create /etc/mysql/my.cnf from /etc/mysql/my.cnf.dpkg-new or something like that… if you have it.

sudo unlink /etc/mysql/my.cnf
sudo mv /etc/mysql/my.cnf.dpkg-new /etc/mysql/my.cnf

P.S: If the symlink’s target is existing, you might want to check dmesg | grep cnf for apparmor error messages.

answered May 31, 2012 at 15:48

Eugene's user avatar

EugeneEugene

1312 bronze badges

This problem can occur if the pid file still exists, such as after a crash. Check for that and delete it if it does exist.

The pid file location defaults to /var/run/mysqld/mysqld.pid but a different location may be set in the config file.

7yl4r's user avatar

7yl4r

4135 silver badges9 bronze badges

answered Jan 29, 2012 at 22:24

John Gardeniers's user avatar

John GardeniersJohn Gardeniers

27.3k12 gold badges53 silver badges109 bronze badges

1

This just happened to me. The filesystem was 100% full

Confirm with: df -h /

answered Apr 30, 2018 at 16:28

timbroder's user avatar

root@broadband:/var/lib/mysql# sudo /etc/init.d/mysql start
[….] Starting mysql (via systemctl): mysql.serviceJob for mysql.service failed because the control process exited with error code. See «systemctl status mysql.service» and «journalctl -xe» for details.
failed!
root@broadband:/var/lib/mysql# systemctl status mysql.service
● mysql.service — LSB: Start and stop the mysql database server daemon
Loaded: loaded (/etc/init.d/mysql; bad; vendor preset: enabled)
Active: failed (Result: exit-code) since Пт 2018-08-03 15:38:42 MSK; 1min 2s ago
Docs: man:systemd-sysv-generator(8)
Process: 14097 ExecStart=/etc/init.d/mysql start (code=exited, status=1/FAILURE)

авг 03 15:38:42 broadband /etc/init.d/mysql[15142]: 0 processes alive and ‘/usr/bin/mysqladmin —defaults-file=/etc/mysql/debian.cnf ping’ resulted in
авг 03 15:38:42 broadband /etc/init.d/mysql[15142]: [61B blob data]
авг 03 15:38:42 broadband /etc/init.d/mysql[15142]: error: ‘Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (111 «Connection refused»)’
авг 03 15:38:42 broadband /etc/init.d/mysql[15142]: Check that mysqld is running and that the socket: ‘/var/run/mysqld/mysqld.sock’ exists!
авг 03 15:38:42 broadband /etc/init.d/mysql[15142]:
авг 03 15:38:42 broadband mysql[14097]: …fail!
авг 03 15:38:42 broadband systemd[1]: mysql.service: Control process exited, code=exited status=1
авг 03 15:38:42 broadband systemd[1]: Failed to start LSB: Start and stop the mysql database server daemon.
авг 03 15:38:42 broadband systemd[1]: mysql.service: Unit entered failed state.
авг 03 15:38:42 broadband systemd[1]: mysql.service: Failed with result ‘exit-code’.
root@broadband:/var/lib/mysql#

root@broadband:/var/lib/mysql# journalctl -xe
авг 03 15:45:18 broadband mysqld[19045]: 180803 15:45:18 [Note] InnoDB: Started in read only mode
авг 03 15:45:18 broadband mysqld[19045]: 180803 15:45:18 [Note] InnoDB: Using mutexes to ref count buffer pool pages
авг 03 15:45:18 broadband mysqld[19045]: 180803 15:45:18 [Note] InnoDB: The InnoDB memory heap is disabled
авг 03 15:45:18 broadband mysqld[19045]: 180803 15:45:18 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
авг 03 15:45:18 broadband mysqld[19045]: 180803 15:45:18 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
авг 03 15:45:18 broadband mysqld[19045]: 180803 15:45:18 [Note] InnoDB: Compressed tables use zlib 1.2.8
авг 03 15:45:18 broadband mysqld[19045]: 180803 15:45:18 [Note] InnoDB: Using Linux native AIO
авг 03 15:45:18 broadband mysqld[19045]: 180803 15:45:18 [Note] InnoDB: Not using CPU crc32 instructions
авг 03 15:45:18 broadband mysqld[19045]: 180803 15:45:18 [Note] InnoDB: Disabling background IO write threads.
авг 03 15:45:18 broadband mysqld[19045]: 180803 15:45:18 [Warning] InnoDB: Unable to open «./ib_logfile0» to check native AIO read support.
авг 03 15:45:18 broadband mysqld[19045]: 180803 15:45:18 [Warning] InnoDB: Linux Native AIO disabled.
авг 03 15:45:18 broadband mysqld[19045]: 180803 15:45:18 [Note] InnoDB: Initializing buffer pool, size = 6.0G
авг 03 15:45:19 broadband mysqld[19045]: 180803 15:45:19 [Note] InnoDB: Completed initialization of buffer pool
авг 03 15:45:19 broadband mysqld[19045]: 180803 15:45:19 [ERROR] InnoDB: Cannot create log files in read-only mode
авг 03 15:45:19 broadband mysqld[19045]: 180803 15:45:19 [ERROR] Plugin ‘InnoDB’ init function returned error.
авг 03 15:45:19 broadband mysqld[19045]: 180803 15:45:19 [ERROR] Plugin ‘InnoDB’ registration as a STORAGE ENGINE failed.
авг 03 15:45:19 broadband mysqld[19045]: 180803 15:45:19 [Note] Plugin ‘FEEDBACK’ is disabled.
авг 03 15:45:19 broadband mysqld[19045]: 180803 15:45:19 [ERROR] Unknown/unsupported storage engine: InnoDB
авг 03 15:45:19 broadband mysqld[19045]: 180803 15:45:19 [ERROR] Aborting
авг 03 15:45:19 broadband mysqld[19045]:
авг 03 15:45:20 broadband mysqld[19045]: 180803 15:45:20 [Note] /usr/sbin/mysqld: Shutdown complete
авг 03 15:45:20 broadband mysqld[19045]:
авг 03 15:45:20 broadband mysqld_safe[19062]: mysqld from pid file /var/run/mysqld/mysqld.pid ended
авг 03 15:45:24 broadband kernel: [UFW BLOCK] IN=enp5s0f0 OUT= MAC=00:15:17:2a:e6:70:00:00:5e:00:01:95:08:00 SRC=188.170.82.201 DST=188.32.114.207 LEN=52 TOS=0x00 PREC=
авг 03 15:45:43 broadband CRON[18327]: pam_unix(cron:session): session closed for user root
авг 03 15:45:49 broadband /etc/init.d/mysql[19509]: 0 processes alive and ‘/usr/bin/mysqladmin —defaults-file=/etc/mysql/debian.cnf ping’ resulted in
авг 03 15:45:49 broadband systemd[1]: mysql.service: Control process exited, code=exited status=1
авг 03 15:45:49 broadband mysql[18463]: …fail!
авг 03 15:45:49 broadband /etc/init.d/mysql[19509]: [61B blob data]
авг 03 15:45:49 broadband systemd[1]: Failed to start LSB: Start and stop the mysql database server daemon.
— Subject: Ошибка юнита mysql.service
— Defined-By: systemd
— Support: lists.freedesktop.org/mailman/listinfo/systemd-devel

— Произошел сбой юнита mysql.service.

— Результат: failed.
авг 03 15:45:49 broadband /etc/init.d/mysql[19509]: error: ‘Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (111 «Connection refused»)’
авг 03 15:45:49 broadband systemd[1]: mysql.service: Unit entered failed state.
авг 03 15:45:49 broadband /etc/init.d/mysql[19509]: Check that mysqld is running and that the socket: ‘/var/run/mysqld/mysqld.sock’ exists!
авг 03 15:45:49 broadband systemd[1]: mysql.service: Failed with result ‘exit-code’.
авг 03 15:45:49 broadband /etc/init.d/mysql[19509]:
авг 03 15:45:50 broadband sudo[18446]: pam_unix(sudo:session): session closed for user root


  • Вопрос задан

    более трёх лет назад

  • 25736 просмотров

Пригласить эксперта

А доступ у юзера, под которым запускается mysql, к файлам внутри /var/lib/mysql есть?

У вас не инициализируется плагин InnoDB, поэтому процесс останавливается. Почему — причины бывают разные, самая банальная — не хватает памяти. Иногда бывают проблемы с файлами

/var/lib/mysql/ib_logfile0
/var/lib/mysql/ib_logfile1

и помогает удаление.
Я бы начал с памяти, уменьшил бы немного настройки.

/var/lib/mysql/ibdata1 — НЕ УДАЛЯТЬ

Похоже у mysql проблемы с логами.
Попробуй перенести логи
mv /var/lib/mysql/ib_log* /tmp
После чего можно запускать. Если в /var/lib/mysql/ таких файлов нету, то проверь в /etc/mysql/my.cnf какие значения у параметров

innodb_data_home_dir

и

innodb_log_group_home_dir

И соответственно в этом каталоге искать файлы логов. Ругается он вроде только на ib_logfile0

Сейчас выдает такие ошибки [….] Starting mysql (via systemctl): mysql.serviceJob for mysql.service failed because the control process exited with error code. See «systemctl status mysql.service» and «journalctl -xe» for details.
failed!
root@broadband:/var/lib/mysql# journalctl -xe
авг 03 16:23:03 broadband kernel: [UFW BLOCK] IN=enp5s0f0 OUT= MAC=00:15:17:2a:e6:70:00:00:5e:00:01:95:08:00 SRC=212.34.248.214 DST=188.32.114.207 LEN=40 TOS=0x00 PREC=
авг 03 16:23:10 broadband kernel: [UFW BLOCK] IN=enp5s0f0 OUT= MAC=00:15:17:2a:e6:70:00:00:5e:00:01:95:08:00 SRC=83.220.237.132 DST=188.32.114.207 LEN=40 TOS=0x08 PREC=
авг 03 16:23:10 broadband kernel: [UFW BLOCK] IN=enp5s0f0 OUT= MAC=00:15:17:2a:e6:70:00:00:5e:00:01:95:08:00 SRC=83.220.237.132 DST=188.32.114.207 LEN=40 TOS=0x08 PREC=
авг 03 16:23:11 broadband sudo[6000]: root : TTY=pts/0 ; PWD=/var/lib/mysql ; USER=root ; COMMAND=/etc/init.d/mysql start
авг 03 16:23:11 broadband sudo[6000]: pam_unix(sudo:session): session opened for user root by serveradmin(uid=0)
авг 03 16:23:11 broadband systemd[1]: Starting LSB: Start and stop the mysql database server daemon…
— Subject: Начинается запуск юнита mysql.service
— Defined-By: systemd
— Support: lists.freedesktop.org/mailman/listinfo/systemd-devel

— Начат процесс запуска юнита mysql.service.
авг 03 16:23:11 broadband mysql[6017]: * Starting MariaDB database server mysqld
авг 03 16:23:14 broadband mysqld_safe[6622]: Starting mysqld daemon with databases from /var/lib/mysql
авг 03 16:23:14 broadband mysqld[6627]: 180803 16:23:14 [Warning] ‘THREAD_CONCURRENCY’ is deprecated and will be removed in a future release.
авг 03 16:23:14 broadband mysqld[6627]: 180803 16:23:14 [Warning] ‘THREAD_CONCURRENCY’ is deprecated and will be removed in a future release.
авг 03 16:23:14 broadband mysqld[6627]: 180803 16:23:14 [Note] /usr/sbin/mysqld (mysqld 10.0.33-MariaDB-0ubuntu0.16.04.1) starting as process 6626 …
авг 03 16:23:14 broadband mysqld[6627]: 180803 16:23:14 [ERROR] mysqld: File ‘/var/log/mysql/mysql-bin.index’ not found (Errcode: 13 «Permission denied»)
авг 03 16:23:14 broadband mysqld[6627]: 180803 16:23:14 [ERROR] Aborting
авг 03 16:23:14 broadband mysqld[6627]:
авг 03 16:23:14 broadband mysqld[6627]: 180803 16:23:14 [Note] /usr/sbin/mysqld: Shutdown complete
авг 03 16:23:14 broadband mysqld[6627]:
авг 03 16:23:14 broadband mysqld_safe[6630]: mysqld from pid file /var/run/mysqld/mysqld.pid ended
авг 03 16:23:20 broadband kernel: [UFW BLOCK] IN=enp5s0f0 OUT= MAC=00:15:17:2a:e6:70:00:00:5e:00:01:95:08:00 SRC=188.92.20.98 DST=188.32.114.207 LEN=40 TOS=0x00 PREC=0x
авг 03 16:23:24 broadband kernel: [UFW BLOCK] IN=enp5s0f0 OUT= MAC=00:15:17:2a:e6:70:00:00:5e:00:01:95:08:00 SRC=195.38.23.96 DST=188.32.114.207 LEN=52 TOS=0x00 PREC=0x
авг 03 16:23:43 broadband CRON[5928]: pam_unix(cron:session): session closed for user root
авг 03 16:23:43 broadband /etc/init.d/mysql[7063]: 0 processes alive and ‘/usr/bin/mysqladmin —defaults-file=/etc/mysql/debian.cnf ping’ resulted in
авг 03 16:23:43 broadband /etc/init.d/mysql[7063]: [61B blob data]
авг 03 16:23:43 broadband mysql[6017]: …fail!
авг 03 16:23:43 broadband /etc/init.d/mysql[7063]: error: ‘Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (111 «Connection refused»)’
авг 03 16:23:43 broadband /etc/init.d/mysql[7063]: Check that mysqld is running and that the socket: ‘/var/run/mysqld/mysqld.sock’ exists!
авг 03 16:23:43 broadband /etc/init.d/mysql[7063]:
авг 03 16:23:43 broadband systemd[1]: mysql.service: Control process exited, code=exited status=1
авг 03 16:23:43 broadband systemd[1]: Failed to start LSB: Start and stop the mysql database server daemon.
— Subject: Ошибка юнита mysql.service
— Defined-By: systemd
— Support: lists.freedesktop.org/mailman/listinfo/systemd-devel

— Произошел сбой юнита mysql.service.

— Результат: failed.
авг 03 16:23:43 broadband systemd[1]: mysql.service: Unit entered failed state.
авг 03 16:23:43 broadband systemd[1]: mysql.service: Failed with result ‘exit-code’.
авг 03 16:23:43 broadband sudo[6000]: pam_unix(sudo:session): session closed for user root


  • Показать ещё
    Загружается…

31 янв. 2023, в 07:51

50000 руб./за проект

31 янв. 2023, в 07:34

4500 руб./за проект

31 янв. 2023, в 04:30

200 руб./за проект

Минуточку внимания

  • Печать

Страницы: [1] 2  Все   Вниз

Тема: Ubuntu 10.04: Не запускается MySQL-сервер после установки  (Прочитано 13287 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн
Yarovoy

Здравствуйте.

Хочу организовать бэкап удаленного сервера при помощи Bacula, которая в свою очередь требует наличия на компьютере установленного MySQL сервера. До этого у меня уже был установлен MySQL, но я давно им не пользовался поэтому решил полностью его реинсталировать. Удалил сервер при помощи

sudo apt-get purge mysql-serverУдалил папку с конфигурацией (наверное, я сглупил сделав это) /etc/mysql и папку со старыми файлами баз данных /var/lib/mysql. После этого пытаюсь заново установить сервер:

yuriy@yuriy-laptop:/$ sudo apt-get install mysql-serverи запустить его:

yuriy@yuriy-laptop:/$ sudo service mysql start
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service mysql start

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the start(8) utility, e.g. start mysql
start: Unknown job: mysql

Как вы видите, запуск сервиса не производится. Уже убил три часа на поиск решения, но гугл ничего существенного не выдает. Поэтому прошу помощи у вас. Но основная задача — это все таки установить Bacula. Поэтому, если это можно сделать без установки MySQL-сервера, то подскажите как.


Оффлайн
CyberFox

Та же фигня, только он сначала у меня запускался, а потом лег. :) И всё.


Оффлайн
knyshow


Оффлайн
Yarovoy

Хм, видимо какие-то проблемы с совместимостью ОС. Будем писать багрепорт?


Оффлайн
Allen

Наверное start-job зависла.
У меня вылечилось так:

# service mysql status
mysql start/post-start, process 764
Далее снятие процесса с PID показанным в статусе

# kill -n 15 764А затем старт по-новой

# service mysql start


Оффлайн
Sataly.

Господа, подскажите плз.
Недавно система обновилась до 10.04 все было ок.
Позавчера после долгих и успешных издевательств над LAMP  :coolsmiley: (учу sql вторую неделю) ноут прочно повис, ребут все дела — mysql не запускается…
Пакет mysql-server-5.1 поврежден не удаляется потому, что:

Package is in a very bad inconsistent state - you should reinstall it before attempting a removal.
и не переустанавливается зависая на:

Preparing to replace mysql-server-5.1 5.1.41-3ubuntu12.3 (using .../mysql-server-5.1_5.1.41-3ubuntu12.3_i386.deb) ...
приходится насильно закрывать

форум+гугль+ман = удалось удалить, но если снова попытаться установить та же самая трабла  :idiot2:

попытка поставить  mysql-server-5.0 закончилась тем, что Ubuntu ругнулась на конфликт с  mysql-server-5.1

подскажите как сделать счастье?

Я часть той силы, что очень хочет зла, но вечно совершает благо.


Оффлайн
wizzardzzz

sudo /etc/init.d/mysql start
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service mysql start
Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the start(8) utility, e.g. start mysql
Это не ошибка, это предупреждение, информирующее что теперь не нужно запускать непосредственно скрипты запуска, для этого есть утилита service:
Запуск MySQL:
sudo service mysql start
Остановка MySQL:
sudo service mysql stop
Перезапуск MySQL:
sudo service mysql restart
Смотрим лог ошибок /var/log/mysql/ на что жалуется. У меня забилось место на разделе бедняжка Мйскул не могла развернуся при старте

« Последнее редактирование: 26 Января 2011, 11:06:57 от wizzardzzz »


Оффлайн
dj—alex


Оффлайн
dr.Faust

Не стартует мускул.
Просто пишет на sudo service mysql start, что попытка запуска неудачна.
Если запускать так: /usr/sbin/mysqld —user=root говорит, что нет директории /var/run/mysqld. Её действительно нет.
Запускаю ручками так:
mkdir /var/run/mysqld; /usr/sbin/mysqld —user=root
Но это же не дело…

В автозапуске есть пункт mysql, но его запуск не включне ни на одном уровне. На каких уровнях он вообще должен запускаться?


Оффлайн
maskaral

Была такая же проблема.

Оказалось, что отсутствует файл /etc/mysql/my.cnf.

Соответственно, после его создания с общим содержимым всё заработало.


Оффлайн
kanadzava


Оффлайн
AnrDaemon

kanadzava, и что бы это значило?…

Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…


Оффлайн
kanadzava

просто поделился решением проблемы, сам долго искал
я что то сделал не так?


Оффлайн
AnrDaemon

Не объяснили, что это даёт. Со своей колокольни, например, я вижу, что это ничего не даёт, кроме повреждения установленной системы. Вас тоже сдать модераторам как вредителя?

Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…


Оффлайн
kanadzava

Не объяснили, что это даёт.

перевод текста по той ссылке:
«После обновления убунты 10.10 до 11.04 у меня появились некоторые проблемы с мускулем.
Когда я пытался запустить мускуль, получал следующую ошибку: Warning: Fake initctl called, doing nothing..
Я пытался переустановить мускуль, но это не помогло.
Я не знаю что случилось с этой проблемой (? я не силен в английском). Так что я копался в инете пока не нашел инструкцию решающую эту проблему
http://sites.google.com/site/ubuntu4us/artigos/solucao-de-problemas-e-erros/starting-services-ubuntu/fake-start-stop-daemon

Вот путь решения проблемы:
Если вы не можете запустить мускуль, просто введите это в терминал

sudo mv /sbin/initctl /sbin/initctl.FAKE
sudo ln -s /sbin/initctl.REAL /sbin/initctl
И снова попробуйте запустить мускуль

sudo service mysql start[/font]
Как то так. В чем вред я не знаю, т.к. с линухом дел почти не имел

Вас тоже сдать модераторам как вредителя?

Думаю все бы выиграли если бы вы сразу обьяснили где я ошибся и чем вредят те команды.


  • Печать

Страницы: [1] 2  Все   Вверх

On Ubuntu 12.04 I had this same problem after changing buffer sizes in /etc/mysql/my.cnf file, I think I got a little carried away. Anyway after trying to change them back to the default setting MySQL still would not start.

I tried several different methods to get it resolved, I did notice that /var/run/mysql/mysql.sock was missing. This could be an issue so you may check there and if its missing you can replace it by doing the following:

sudo touch /var/run/mysql/mysql.sock
sudo chown mysql /var/run/mysql/mysql.sock

This did NOT fix the problem for me! But it may for some.

What I had to do was completely reinstall MySQL, to do this you will need to use the sudo command. The steps to completely removing and reinstalling MySQL are as follows:

Remove MySQL

sudo apt-get --purge remove mysql-server
sudo apt-get --purge remove mysql-client
sudo apt-get --purge remove mysql-common

Optionally you may use aptitude, by replacing apt-get —purge with aptitude

Clean UP

sudo apt-get autoremove
sudo apt-get autoclean

Remove MySQL dir

sudo rm -rf /etc/mysql

Install MySQL

sudo apt-get install mysql-server mysql-client

MySQL should now be running, you can check this by doing the following:

sudo service mysql status

You should see

mysql start/running, process xxxxx

Hope this helps, and thought I might add after doing this all my databases and tables where still available, however I did have to recreate the users and passwords for those databases.

Note: If you had mysql extension for php, you will need to reinstall this too.

sudo apt-get install php5-mysql

Понравилась статья? Поделить с друзьями:
  • Sudden changes in the reducer temperature indications гбо ошибка
  • Sud ошибка в машинке что делать самсунг это значит
  • Sud ошибка в машинке самсунг эко бабл 6 кг
  • Sud ошибка в машинке самсунг что как устранить ошибку
  • Sud ошибка в машинке самсунг при отжиме