CentOS 7安裝Mysql并設(shè)置開機自啟動的方法
CentOS 7不帶Mysql數(shù)據(jù)庫了,默認的數(shù)據(jù)庫是MariaDB(Mysql的一個分支)。
可以按照以下步驟手動安裝Mysql數(shù)據(jù)庫。
1. 下載rpm安裝文件
wget http://repo.mysql.com/mysql-community-release-el7.rpm
2. 執(zhí)行rpm安裝
rpm -ivh mysql-community-release-el7.rpm
依賴解析完成后,出現(xiàn)下列選項:
Dependencies Resolved ============================================================================================================== Package Arch Version Repository Size ============================================================================================================== Installing: mysql-community-libs x86_64 5.6.32-2.el7 mysql56-community 2.0 M replacing mariadb-libs.x86_64 1:5.5.47-1.el7_2 mysql-community-server x86_64 5.6.32-2.el7 mysql56-community 59 M Installing for dependencies: mysql-community-client x86_64 5.6.32-2.el7 mysql56-community 19 M mysql-community-common x86_64 5.6.32-2.el7 mysql56-community 256 k perl-Compress-Raw-Bzip2 x86_64 2.061-3.el7 base 32 k perl-Compress-Raw-Zlib x86_64 1:2.061-4.el7 base 57 k perl-DBI x86_64 1.627-4.el7 base 802 k perl-IO-Compress noarch 2.061-2.el7 base 260 k perl-Net-Daemon noarch 0.48-5.el7 base 51 k perl-PlRPC noarch 0.2020-14.el7 base 36 k Transaction Summary ============================================================================================================= Install 2 Packages (+8 Dependent packages) Total download size: 82 M Is this ok [y/d/N]:
3. 可以看出,server和client都被選擇安裝。選擇y,自動下載安裝。
4. 安裝完成后,啟動Mysql。
systemctl start mysqld.service
5. 設(shè)置root密碼。
update user set password=password("123456") where user='root';
6. 開機自啟動。
vim /etc/rc.local 添加service mysqld start
7.重要更新:
新的rpm安裝文件沒有自動yum安裝的腳本了,需要手動執(zhí)行yum安裝。
即步驟2之后執(zhí)行yum install mysql-server即可。
8.關(guān)于自啟動
步驟6只適用于mysqld沒有自啟動的條件下。
如果默認mysql是自啟動的,可能和rc.local中的自啟動出現(xiàn)亂序之類的問題。
更穩(wěn)妥的一個解決辦法見:
CentOS 7 程序自啟動的問題
一、問題現(xiàn)象:
系統(tǒng)重啟后,發(fā)現(xiàn)mysqld服務(wù)啟動正常,但是依賴mysql數(shù)據(jù)庫的應(yīng)用程序A啟動失敗。
查看日志顯示,程序A啟動的時候鏈接數(shù)據(jù)庫失敗。
二、原因分析:
mysqld服務(wù)是正常啟動的。
此時手動重啟程序A,A也正常運行。
結(jié)論:說明程序A啟動的時候,mysqld可能沒有啟動。
三、啟動順序
首先想到的就是調(diào)整mysqld服務(wù)的啟動順序,讓它高過我的程序A。
然而發(fā)現(xiàn)/etc/init.d路徑下沒有關(guān)于mysqld的啟動腳本。
四、解決思路
按照鏈接指示安裝的mysqld默認是自動啟動的。
可以取消mysqld的自啟動,然后寫一個啟動腳本確保它啟動在程序A啟動之前。
五、解決辦法
1. 查看系統(tǒng)當(dāng)前默認啟動項目的方法,不再是setup之類的了。
systemctl list-unit-files
執(zhí)行此命令能查看當(dāng)前系統(tǒng)的服務(wù)啟動和服務(wù)狀態(tài)。
結(jié)果顯示如下:
... microcode.service enabled mysql.service enabled mysqld.service enabled NetworkManager-dispatcher.service enabled ...
2. 取消mysqld的自啟動
systemctl disable mysqld
執(zhí)行該命令后再查看當(dāng)前系統(tǒng)的服務(wù)狀態(tài):
... microcode.service enabled mysqld.service disabled NetworkManager-dispatcher.service enabled ...
3. 自定義/etc/rc.local
先執(zhí)行systemctl start mysqld
再執(zhí)行startA
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Linux運維基礎(chǔ)httpd靜態(tài)網(wǎng)頁教程
這篇文章主要介紹了Linux運維基礎(chǔ)中怎樣制作httpd靜態(tài)網(wǎng)頁,附含源碼及圖片示例,有需要的朋友可以借鑒參考下,希望可以有所幫助,祝進步2021-09-09