linux-mysql8的安裝步驟詳解及須要注意的坑

(本文由言念小文原創,轉載請註明出處)node

前言

最近安裝mysql8時,遇到了一些問題,記錄下來做爲之後操做指導資料。mysql

Linuxmysql安裝方法我的目前使用的有兩種:linux

一種是基於rpm安裝;sql

另外一種就是在windows上將安裝包下載下來,而後經過ftplrzsz等工具將包傳輸到linux,而後再手動解壓安裝。windows

因爲個人系統爲centos,所以這裏直接使用rpm安裝。centos

 

 

安裝的步驟預覽:

 

STEP1 檢查系統是否已安裝mysql,自帶了就卸載掉;工具

 

STEP2 查看rpm資源包,選擇與當前linux系統對應的資源包;centos7

 

STEP3 下載與系統對應的rpm資源包;spa

 

STEP4 安裝rpm包;3d

 

STEP5 安裝mysql

 

STEP6  mysql安裝結果驗證;

 

STEP7 啓動mysql

 

STEP8 查看mysql運行狀態;

 

STEP9 首次啓動設置root用戶帳號和密碼;

 

其中STEP7 STEP9爲重點關注步驟踩坑步驟。

 

 

開始安裝

安裝過程當中請確保當前linux系統爲root用戶,安裝前建立一個系統用戶mysql做爲dba用戶

 

STEP1 檢查系統是否已安裝mysql,安裝了就卸載掉

 

rpm -qa | grep mysql #檢查系統是否已安裝mysql

(若是系統已安裝mysql,能夠卸載:

rpm -e mysql  #普通模式刪除

rpm -e --nodeps mysql  # 強力刪除模式,若是使用上面命令刪除時,提示有依賴的其它文件,則用該命令能夠對其進行強力刪除)

 

 

STEP2 查看rpm資源包,選擇與當前linux系統對應的資源包

 

Centos中使用yum命令安裝mysql,安裝前須要去獲取對應的rpm資源包。

首先在 https://dev.mysql.com/downloads/repo/yum/ 查詢rpm資源包,請注意:先查看系統的版本,再選擇與系統匹配的資源包。

 

 

圖1

 

 

 

圖2

 

如圖12所示,個人系統是centos7,由於我選擇紅框標記處對應的rpm包。

 

 

STEP3 下載與系統對應的rpm資源包

 

使用wget命令下載rpm資源包: 「wget http://repo.mysql.com/資源包名稱」,即wget http://repo.mysql.com/mysql80-community-release-el7-3.noarch.rpm

說明:下載的rpm包會下載到當前執行命令的目錄

 

 

STEP4 安裝rpm

rpm安裝命令爲:rpm -ivh rpm-pathname

執行命令:rpm -ivh mysql80-community-release-el7-3.noarch.rpm

說明:rpm-pathname爲下載的rpm包的全路徑。

STEP5 安裝mysql

執行命令yum install mysql-server安裝mysql,這個過程比較長,若是中途中斷,能夠下次直接執行該命令繼續安裝。

STEP6 mysql安裝結果驗證

Mysql安裝完成後,須要驗證一下mysql是否安裝成功:

執行命令 mysqladmin --version,出現以下圖信息則說明安裝ok

 

 

STEP7 啓動mysql

STEP7.1 mysql的目錄擁有者改成mysql這個用戶

chown mysql:mysql -R /var/lib/mysql

 

STEP7.2 要保證ibdata1可寫

mysql啓動前必定要保證ibdata1可寫,不然沒法啓動mysql,查看/var/log/.mysqld.log日誌,報下圖錯誤:

 

 

 

所以須要改變一下目錄讀寫權限:

執行命令:chmod -R 777 /var/lib/mysql

PS:我這裏操做比較粗暴,建議只修改/var/lib/mysql/ibdata1的讀寫權限

 

STEP7.3 初始化mydql(這一步很是重要)

執行命令:mysqld --initialize

該動做會爲root用戶在/var/log/mysqld.log中生成一個初始密碼

 

STEP7.4 啓動mysql

執行命令:systemctl start mysqld

若是mysql啓動失敗,去查看/var/log/mysqld.log中失敗緣由,根據日誌可以找到對應解決方法。

STEP8 查看mysql運行狀態

執行命令:systemctl status mysqld

Mysql啓動成功會看到下圖日誌:

 

STEP9 首次啓動設置root用戶帳號和密碼(這是本文重點中的重點,請務必仔細閱讀)

STEP9.1 查看root用戶初始密碼

Mysql8.0以前的版本,root用戶的密碼默認爲空,可直接修改root用戶的密碼。Mysql8.0及以後的版本,修改root初始密碼,與以前版本不一樣,使用以前的方法:

mysqladmin -u root password ‘9527’

結果報錯:

 

還記得步驟STEP7.3嗎,這一步在/var/log/mysqld.log產生了一個root用戶的初始密碼。執行命令查看root用戶的初始密碼以下圖。

執行命令:cat /var/log/mysqld.log

圖中紅框標記處,就是root用戶的初始密碼。

STEP9.2 使用初始密碼root用戶登陸

執行命令:mysql -u root -p

而後輸入初始密碼登陸成功,以下圖:

 STEP9.3 修改root用戶登陸密碼

修改root用戶登陸密碼,而後退出登陸狀態,在此從新使用新密碼登陸,驗證成功。至此,mysql初步安裝完成。

ALTER USER root@localhost IDENTIFIED  BY '9527'

exit

 

 

 

 

總結:步驟STEP7.3很是關鍵,若是缺乏這一步,要修復初始密碼報錯問題會很複雜。

相關文章
相關標籤/搜索