centos7编译安装MySQL无法启动解决办法

安装mysql步骤没有问题但无法启动

我们有时会遇到这种情况,就是MySQL安装完后,输入启动命令没有问题,但是查看MySQL运行状态时却是关闭状态,针对这一问题,这篇文章写出了我在遇到这种问题时的一种解决方案。

在网上查看了很多文章都没有找到有效的解决方法,如果你也是这种情况可以尝试以下方法。

解决方法

centos7内置的MySQL镜像已经放弃Oracle公司的MySQL,改用MySQL的分支数据库mariaDB,所以我们应该安装mariaDB。

  • 安装mariaDB所需要的依赖包
[root@centos ~]# yum install -y mariadb-embedded mariadb-libs mariadb-bench mariadb mariadb-server
  • 启动mariaDB
[root@centos ~]# systemctl start mariadb
  • 设置mariaDB开机自启动
[root@centos ~]# systemctl enable mariadb
  • 查看mariaDB状态
[root@centos ~]# systemctl status mariadb

这时候我们可以看到mariaDB已经启动成功了

  • 然后查看mysqld相关进程
[root@centos ~]# ps aux |grep mysqld
root       1253  0.0  0.0 115540  1728 ?        S    20:19   0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/centos.pid
mysql      1544  0.1 18.1 1305040 459588 ?      Sl   20:19   0:06 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/var/lib/mysql --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/var/log/mariadb/mariadb.log --pid-file=/var/lib/mysql/centos.pid --socket=/var/lib/mysql/mysql.sock
root       2129  0.0  0.0 112812   972 pts/0    R+   22:02   0:00 grep --color=auto mysqld
扩展:ps a 显示现行终端机下的所有程序,包括其他用户的程序。
     ps u   以用户为主的格式来显示程序状况。
     ps x   显示所有程序,不以终端机来区分。
  • 强制杀死这些进程
[root@centos ~]# kill -9 1253
[root@centos ~]# kill -9 1544
[root@centos ~]# kill -9 2129

这几个出现的进程有的会无法杀死,没有关系继续执行下一步

  • 启动mysql
[root@centos ~]# systemctl start mysql
  • 设置mysql开机自启动
[root@centos ~]# systemctl enable mysql
  • 查看mysql状态
[root@centos ~]# systemctl status mysql
● mysql.service - LSB: start and stop MySQL
   Loaded: loaded (/etc/rc.d/init.d/mysql; bad; vendor preset: disabled)
   Active: active (running) since Wed 2021-05-05 20:20:00 EDT; 1h 55min ago
     Docs: man:systemd-sysv-generator(8)
  Process: 1100 ExecStart=/etc/rc.d/init.d/mysql start (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/mysql.service
           ├─1253 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/centos.pid
           └─1544 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/var/lib/mysql --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/var/log/mariadb/mariadb.log --pid-file=/var/lib/mysql/centos.pid --s...

May 05 20:19:59 centos systemd[1]: Starting LSB: start and stop MySQL...
May 05 20:20:00 centos mysql[1100]: Starting MySQL SUCCESS!
May 05 20:20:00 centos systemd[1]: Started LSB: start and stop MySQL.

这时候我们可以看到mysql已经启动起来了。

你可能感兴趣的:(linux,mysql,centos,服务器,运维)