Centos7与Fedora24安装mysql后无法启动,提示 Unit mysql.service failed to load:No such file or directory

车峻熙
2023-12-01

不想装Oracle,心想装个MySQL轻便一点,我用的Linux版本是Fedora24.执行完yum安装命令后发现竟然无法启动错误提示如下

[java]  view plain  copy
 print ?
  1. [root@localhost ~]# systemctl start mysql.service  
  2. Failed to start mysql.service: Unit mysql.service not found.  
查了半天资料,终于了解到 MariaDB代替了mysql数据库,MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。

因此用上述命令启动不起来,正确的方法如下
[java]  view plain  copy
 print ?
  1. # yum install mariadb-server -y //如果已安装可以省略  
  2. # systemctl start mariadb.service //启动服务  
  3. # systemctl enable mariadb.service //开机启动服务  
  4. # mysql -u root -p //登录mysql  

---------------------------------------------------------------------------------------------------不华丽的分割线--------------------------------------------------------------------------------------------------------
如果你不想用这个方法解决这个问题,还有一个方法,不过个人并不推荐此方法,这个方法就是在 /etc/systemd/system/mysqld.service 添加Unit,既然错误提示找不到Unit那我们添加一个就好了。在  /etc/systemd/system/mysqld.service下添加如下内容
[java]  view plain  copy
 print ?
  1. [Unit]  
  2. Description=MySQL Server  
  3. After=network.target  
  4.   
  5. [Service]  
  6. ExecStart=/usr/bin/mysqld --defaults-file=/etc/mysql/my.cnf --datadir=/var/lib/mysql --socket=/var/run/mysqld/mysqld.sock User=mysql  
  7. Group=mysql  
  8. WorkingDirectory=/usr  
  9.   
  10. [Install]  
  11. WantedBy=multi-user.target  
然后运行
[java]  view plain  copy
 print ?
  1. systemctl daemon-reload  
刷新缓存
这样我们就可以用
[java]  view plain  copy
 print ?
  1. systemctl start mysql.service  
启动mysql了

转自:http://blog.csdn.net/ezitai/article/details/52085141
 类似资料: