What to do if mysql start fails

藏色散人
Release: 2021-12-28 10:53:02
Original
5327 people have browsed it

Solution to the failure of mysql start: 1. Migrate the original data directory to the redesigned data directory; 2. Execute "chown -R mysql:mysql /mydata/data/"; 3. Execute " kill -9 "process number"; 4. Delete mysql-bin.

What to do if mysql start fails

The operating environment of this article: Windows 7 system, mysql version 5.5, Dell G3 computer.

What should I do if mysql start fails?

mysql database failed to start

Introduction:

After restarting the server-->Restart the application service (Confluence)--> Error, database connection failed (mysql is set to start automatically at boot) --> Check the mysql database status:

[root@fisheye ~]# ps -ef | grep mysql root 25555 21974 0 11:28 pts/0 00:00:00 grep mysql
Copy after login

Start the mysql server

[root@fisheye data]# service mysql start MySQL server PID file could not be found![失败] Starting MySQL.............. ERROR! The server quit without updating PID file (/mydata/data/fisheye..pid).[失败]
Copy after login

Check the error log:

[root@fisheye data]# tail -100 fisheye.err InnoDB: Last MySQL binlog file position 0 337403929, file name ./mysql-bin.000016 141013 1:13:28 InnoDB: Waiting for the background threads to start 141013 1:13:29 InnoDB: 5.5.33 started; log sequence number 1006647152 17:13:29 UTC - mysqld got signal 11 ; This could be because you hit a bug. It is also possible that this binary or one of the libraries it was linked against is corrupt, improperly built, or misconfigured. This error can also be caused by malfunctioning hardware. We will try our best to scrape up some info that will hopefully help di141013 01:13:29 mysqld_safe mysqld from pid file /mydata/data/fisheye.pid ended
Copy after login

No obvious error message was found, so I manually created a pid file and tried

[root@fisheye data]# touch /mydata/data/fisheye.pi
Copy after login

and then restarted the service:

[root@fisheye data]# service mysql restart ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
Copy after login

Suddenly it occurred to me that I had read such error reporting articles before, and remembered that it might be a disk Mysql cannot start due to insufficient space.

[root@fisheye data]# df -h 文件系统 容量 已用 可用 已用% 挂载点 /dev/sda1 9.5G 9.5G 0 100% / /dev/sda4 5.5G 1.3G 4.0G 24% /mnt/backup /dev/mapper/IhuilianVG-IhuilianLV00 22G 4.2G 17G 20% /var/www/app tmpfs 1.3G 0 1.3G 0% /dev/shm
Copy after login

Sure enough, here are some solutions to similar problems (unable to start):

1. It may be that the partition where the datadir directory exists is full (df -h )

Solution: Open the configuration file /etc/my.cnf, re-specify the data directory (datadir) under the [mysqld] section, and migrate the original data directory to the redesigned data directory

About migration: (1) When using cp or tar, you must give permission, but it is recommended to authorize it again to prevent accidents; (2) When the data is relatively large, it must be compressed first and then migrated to ensure completeness properties, especially when scp is moved to other machines, it may time out, so it must be compressed (tar.gz); (3) If it is moved to another server, the mysql version must be consistent.

2. It may be that the /mydata/data/fisheye.pid file does not have write permission

Solution: Give permission and execute "chown -R mysql:mysql /mydata/data/" Then Restart mysqld!

3. The mysql process may already exist in the process

Solution: Use the command "ps -ef|grep mysqld" to check whether there is a mysqld process. If so, use "kill -9 process number" Kill and restart mysqld!

4. It may be the second time I installed mysql on the machine, and there is residual data that affects the startup of the service.

Solution: Go to the mysql data directory/data and take a look. If mysql-bin.index exists, delete it as soon as possible. It is the culprit.

5.skip-federated field problem (error message: [ERROR] /mydata/data/mysql/libexec/mysqld: unknown option '--skip-federated')

Solution: Check whether there is an uncommented skip-federated field in the /etc/my.cnf file. If there is, comment it out immediately.

6. The trouble caused by selinux, if it is a centos system, selinux will be turned on by default

Solution: close it, open /etc/selinux/config, and change SELINUX=enforcing to SELINUX= After disabling, save and exit and try restarting the machine.

Recommended learning: "mysql video tutorial"

The above is the detailed content of What to do if mysql start fails. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!