Centos7 mysql Unit not found,Centos7 在線安裝mysql 5.7


 

================================

©Copyright 蕃薯耀 2021-12-31

https://www.cnblogs.com/fanshuyao/

 

一、Mysql Unit not found 問題

centos7 mysql --initialize 后啟動mysql(service mysqld start)報錯:Unit not found.

Failed to start mysql.server.service: Unit not found.

 

二、Mysql Unit not found 原因

在CentOS 7中已經不在支持mysql(建議改使用MariaDB),就算已經安裝,但CentOS7系統中(/usr/lib/systemd/system)是沒有該服務的。

為什么不支持了呢?

MariaDB數據庫管理系統是MySQL的一個分支,主要由開源社區在維護,采用GPL授權許可
。開發這個分支的原因之一是:甲骨文公司收購了MySQL后,有將MySQL閉源的潛在風險,
因此社區采用分支的方式來避開這個風險。

 

 

三、centos7 mysql Unit not found 解決方案

 

1、解決方案一:使用MariaDB代替mysql數據庫

Centos 7默認是已經安裝了MariaDB的,如果沒有,可自行安裝。

#安裝mariadb
yum install mariadb-server -y
 
#啟動服務
systemctl start mariadb.service
 
#設置開機啟動
systemctl enable mariadb.service
 
#登錄mysql
mysql -uroot -p

 

 

2、解決方案二:手動添加mysqld.service

(1)進入/usr/lib/systemd/system目錄

cd /usr/lib/systemd/system

 

(2)創建mysqld.service文件

vi mysqld.service

 

(3)mysqld.service文件內容

[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
 
[Install]
WantedBy=multi-user.target
 
[Service]
User=mysql
Group=mysql
Type=forking
 
# Start main service
ExecStart=/usr/bin/mysqld --defaults-file=/etc/mysql/my.cnf
 
# Sets open_files_limit
LimitNOFILE = 5000
 

 

下面的rpm方式安裝mysql自動生成的mysqld.service,供參考:

[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
 
[Install]
WantedBy=multi-user.target
 
[Service]
User=mysql
Group=mysql
 
Type=forking
 
PIDFile=/var/run/mysqld/mysqld.pid
 
# Disable service start and stop timeout logic of systemd for mysqld service.
TimeoutSec=0
 
# Execute pre and post scripts as root
PermissionsStartOnly=true
 
# Needed to create system tables
ExecStartPre=/usr/bin/mysqld_pre_systemd
 
# Start main service
ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS
 
# Use this to switch malloc implementation
EnvironmentFile=-/etc/sysconfig/mysql
 
# Sets open_files_limit
LimitNOFILE = 5000
 
Restart=on-failure
 
RestartPreventExitStatus=1
 
PrivateTmp=false

 

(4)重新加載系統服務

systemctl daemon-reload

 

(5)Mysql設置開機啟動,並啟動mysql服務

systemctl enable mysqld.service
 
systemctl start mysqld.service

 

查看Mysql狀態

systemctl status mysqld.service
 
 
service mysqld status

 

 

3、解決方案二:在線安裝 mysql-server

(1)先安裝wget工具,有了可省略

yum -y install wget

 

(2)獲取mysql5.7下載的鏡像

wget http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm

 

沒有該鏡像,在安裝Mysql時(yum -y install mysql-server)會報錯:

沒有可用軟件包 mysql-server。

 

(3)rpm 方式安裝Mysql鏡像

rpm -ivh mysql57-community-release-el7-7.noarch.rpms

或者?

yum localinstall -y mysql57-community-release-el7-7.noarch.rpm

 

(4)安裝Mysql服務

yum -y install mysql-server

或者?

yum install -y mysql-community-server

 

 

 

 

(時間寶貴,分享不易,捐贈回饋,^_^)

 

================================

©Copyright 蕃薯耀 2021-12-31

https://www.cnblogs.com/fanshuyao/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM