A bunch of methods were found on the internet as follows:
1. May be the/usr/local/mysql/data/rekfan.pid file does not write permission
Workaround: Give permission, execute "chown-r mysql:mysql/var/data" "Chmod-r 755/usr/local/mysql/data" and restart mysqld!
2. There may already be a MySQL process in progress
WORKAROUND: Use the command "Ps-ef|grep mysqld" to see if there is a mysqld process that is killed with the kill-9 process number and then restarted mysqld!
3. It may be the second time that MySQL is installed on the machine, with residual data affecting the startup of the service.
Solution: Go to MySQL Data directory/data Look, if there is mysql-bin.index, quickly remove it, it is the culprit. I am using the third method to solve!
4.mysql The/ETC/MY.CNF configuration file is used when no profile is specified at startup, open this file to see if there is a specified data directory (DATADIR) under the [Mysqld] section.
WORKAROUND: Please set this line under [mysqld]: DataDir =/usr/local/mysql/data
5.skip-federated field problem
Workaround: Check to see if there are any skip-federated fields in the/etc/my.cnf file that are not commented out, and comment them out immediately.
6. Error log directory does not exist
Workaround: Use the "Chown" "chmod" command to give MySQL owner and permissions
7.selinux trouble, if it is CentOS system, the default will open SELinux
Solution: Close it, open the/etc/selinux/config, change the selinux=enforcing to selinux=disabled after the disk to restart the machine to try.
But not resolved, and finally directly to the/usr/local/mysql/data directory chmod 777-r/usr/local/myql/data Problem resolution should be a permission issue, can not generate localhost.localdomain.pid files