CentOS7安裝mysql5.7詳細過程


文章參考以下博客綜合而來: 

   https://blog.csdn.net/qq_36582604/article/details/80526287

   https://www.cnblogs.com/minseo/p/15835416.html

   https://www.cnblogs.com/binbinyouni/p/7112195.html

   https://blog.csdn.net/wltsysterm/article/details/79649484

   在CentOS中默認安裝有MariaDB,這個是MySQL的分支,但為了需要,還是要在系統中安裝MySQL,而且安裝完成之后可以直接覆蓋掉MariaDB。

1. 下載並安裝MySQL官方的 Yum Repository
    [root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

    使用上面的命令就直接下載了安裝用的Yum Repository,大概25KB的樣子,然后就可以直接yum安裝了。

    [root@localhost ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm
   之后就開始安裝MySQL服務器。

 

   [root@localhost ~]# yum -y install mysql-community-server
   這步可能會花些時間,安裝完成后就會覆蓋掉之前的mariadb。 

    PS: 此安裝可能因為CentOS上使用yum安裝MySQL時報檢索密鑰錯誤,解決方法如下:       

           使用yum安裝MySQL時報錯
         yum -y install mysql mysql-server
         yum -y install mysql-community-server
           報錯內容如下

 warning: /var/cache/yum/x86_64/7/mysql57-community/packages/mysql-community-libs-compat-5.7.37-1.el7.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 3a79bd29: NOKEY 從 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql 檢索密鑰 源 "MySQL 5.7 Community Server" 的 GPG 密鑰已安裝,但是不適用於此軟件包。請檢查源的公鑰 URL 是否配置正確。 失敗的軟件包是:mysql-community-libs-compat-5.7.37-1.el7.x86_64 GPG 密鑰配置為:file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql 

          處理方式有兩種

  1. 到mysql官網下載校驗文件
  2. 修改配置跳過校驗
    本文記錄第二種方式
    編輯文件
    /etc/yum.repos.d/mysql-community.repo
    修改對應安裝版本的gpgcheck=0即可,默認值為1
 [mysql57-community] name=MySQL 5.7 Community Server baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/ enabled=1 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql 

          再次安裝即可

   至此MySQL就安裝完成了,然后是對MySQL的一些設置。

  

2. MySQL數據庫設置
首先啟動MySQL

[root@localhost ~]# systemctl start mysqld.service

查看MySQL運行狀態,運行狀態如圖:

[root@localhost ~]# systemctl status mysqld.service

此時MySQL已經開始正常運行,不過要想進入MySQL還得先找出此時root用戶的密碼,通過如下命令可以在日志文件中找出密碼:

[root@localhost ~]# grep "password" /var/log/mysqld.log

如下命令進入數據庫:

[root@localhost ~]# mysql -uroot -p
輸入初始密碼(是上面圖片最后面的 no;e!5>>alfg),此時不能做任何事情,因為MySQL默認必須修改密碼之后才能操作數據庫:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
其中‘new password’替換成你要設置的密碼,注意:密碼設置必須要大小寫字母數字和特殊符號(,/';:等),不然不能配置成功

 

3.  開啟mysql的遠程訪問
執行以下命令開啟遠程訪問限制(注意:下面命令開啟的IP是 192.168.0.1,如要開啟所有的,用%代替IP):

grant all privileges on *.* to 'root'@'192.168.0.1' identified by 'password' with grant option;

然后再輸入下面兩行命令

mysql> flush privileges;
mysql> exit

 

 

 


4. 為firewalld添加mysql端口3306和Tomcat端口8080

[root@localhost ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
[root@localhost ~]# firewall-cmd --zone=public --add-port=8080/tcp --permanent
然后再重新載入

[root@localhost ~]# firewall-cmd --reload

 

 

 

5 更改mysql的語言
首先重新登錄mysql,然后輸入status:

 

 

 

 

可以看到,綠色箭頭處不是utf-8

因此我們先退出mysql,然后再到、etc目錄下的my.cnf文件下修改一下文件內容

 

 

 

 

進入文件后,新增四行代碼:

 

 

 

 

保存更改后的my.cnf文件后,重啟下mysql,然后輸入status再次查看,你就會發現變化啦

 

 

 

 

最后,到Windows下用cmd命令啟動mysql啦!!

 

 

 

   6. MySQL 5.7root用戶密碼修改    

    在MySQL 5.7 password字段已從mysql.user表中刪除,新的字段名是“authenticalion_string”.

    選擇數據庫:use mysql;

    更新root的密碼:update user set authentication_string=password('新密碼') where user='root' and Host='localhost';

   刷新權限:flush privileges;


   mysql 5.7 修改密碼,受安全策略影響,會失敗,如下圖

 

 

這是由於Mysql5.7默認對於密碼的要求強度較高,設置的密碼過於簡單不予通過。要解決這個問題,涉及到的參數有validate_password_policy和validate_password_length。

validate_password_policy有以下取值:

Policy Tests Performed
0 or LOW Length
1 or MEDIUM Length; numeric, lowercase/uppercase, and special characters
2 or STRONG Length; numeric, lowercase/uppercase, and special characters; dictionary file

0是只要密碼長度符合即可 ;1是必須符合長度,且必須含有數字,小寫或大寫字母,特殊字符;2是必須符合長度,且必須含有數字,小寫或大寫字母,特殊字符,字典文件。默認是1。validate_password_length是設置密碼長度。

所以解決的辦法是:

1、設置密碼安全級別。

 

 

 2、設置密碼長度

 

 

 3、更改密碼

 

    


免責聲明!

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



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