总结 :在初始化数据库之前,一定要确保已经关闭了服务,并且mysql的进程也已经关闭
今天在做mysql主从复制时,需要从数据库无应用数据,所以我打算把之前的数据库进行初始化
先将之前的数据目录清空,然后初始化数据库
初始化完成后重启数据库报错
[root@localhost ~]# systemctl restart mysqldJob for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.想起来我在初始化之前没有关闭mysql服务,所以先将服务关闭再清空数据目录重新初始化
[root@localhost mysql]# systemctl stop mysqld[root@localhost mysql]# rm -rf /data/mysql/*[root@localhost mysql]# /usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/data/mysql --basedir=/usr/local/mysql重新给配置文件
[root@localhost mysql]# cp support-files/mymy-default.cnf mysqld_multi.server mysql-log-rotate mysql.server[root@localhost mysql]# cp support-files/my-default.cnf /etc/my.cnfcp: overwrite ‘/etc/my.cnf’? y[root@localhost mysql]# vi /etc/my.cnf再启服务,发现还是不行,一直报同一个错误
最后排查一下进程,发现是之前的mysqld进程一直没有关掉,导致一直报错
将mysql的进程全部关掉
启动成功。