開始,我默認安裝了MySQL8,可是在測試的時候發現經過Hibernate鏈接以前的MySQL5.7的代碼運行在鏈接新版本的庫的時候發生異常,出於時間緣由沒有深度排查mysql
可是我嚴重懷疑是版本匹配問題,爲了可以快速使用,我選擇回退到以前的5.7sql
整個經歷:vim
添加MySQL Yum存儲庫安全
https://dev.mysql.com/downloads/repo/yum/ 服務器
進入這個網站下載默認給的版本8文件測試
上傳到服務器,固然也能夠複製URL,使用wget進行下載網站
安裝下載的發行包url
rpm -Uvh mysql80-community-release-el7-1.noarch.rpm
而後進行安裝spa
yum install mysql-community-server
根據提示輸入 y 並等待下載與安裝插件
安裝完成
啓動服務以及查看服務是否啓動成功
systemctl start mysqld.service
systemctl status mysqld.service
出現active(running)表示服務啓動成功
以後能夠在設置服務開機啓動(不過基本都是默認開機啓動的)
systemctl enable mysqld
systemctl daemon-reload
rpm -qa |grep -i mysql
查看已經安裝的MySQL(我這裏已是安裝好5.7版本的狀況了)
基本會顯示五個
使用命令進行拆卸
yum remove mysql-community mysql-community-server mysql-community-libs mysql-community-common mysql80-community-release
拆卸完成後再使用
rpm -qa |grep -i mysql
進行檢查,此時應該沒有任何輸出
再查看下拆卸殘留的配置等
find / -name mysql
所有使用刪除命令刪除這些文件,若是不刪除當安裝其餘版本的時候,會存在配置不匹配等問題沒法啓動服務
rm -rf 文件名
沒法啓動的示例
至此,MySQL就徹底拆卸完成了
首先使用下面的命令查看全部可用版本(下圖中顯示的是我已經禁用了8並開啓了5.7的狀況)
yum repolist all | grep mysql
如何禁用8並開啓其餘版本:
官網上給出能夠執行命令
yum-config-manager --disable mysql80-community
yum-config-manager --enable mysql57-community
可是我在執行時報語法錯誤
還有另一種方法:直接修改配置文件
vim /etc/yum.repos.d/mysql-community.repo
# Enable to use MySQL 5.5 [mysql55-community] name=MySQL 5.5 Community Server baseurl=http://repo.mysql.com/yum/mysql-5.5-community/el/7/$basearch/ enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql # Enable to use MySQL 5.6 [mysql56-community] name=MySQL 5.6 Community Server baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/7/$basearch/ enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql # Enable to use MySQL 5.7 [mysql57-community] name=MySQL 5.7 Community Server baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/ enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql [mysql80-community] name=MySQL 8.0 Community Server baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/7/$basearch/ enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql [mysql-connectors-community] name=MySQL Connectors Community baseurl=http://repo.mysql.com/yum/mysql-connectors-community/el/7/$basearch/ enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql [mysql-tools-community] name=MySQL Tools Community baseurl=http://repo.mysql.com/yum/mysql-tools-community/el/7/$basearch/ enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql [mysql-tools-preview] name=MySQL Tools Preview baseurl=http://repo.mysql.com/yum/mysql-tools-preview/el/7/$basearch/ enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql [mysql-cluster-7.5-community] name=MySQL Cluster 7.5 Community baseurl=http://repo.mysql.com/yum/mysql-cluster-7.5-community/el/7/$basearch/ enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql [mysql-cluster-7.6-community] name=MySQL Cluster 7.6 Community baseurl=http://repo.mysql.com/yum/mysql-cluster-7.6-community/el/7/$basearch/ enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
其中的
enabled=0表是禁用,=1表示開啓
修改後保存並退出,再查看下被開啓的版本
yum repolist enabled | grep mysql
如今可使用安裝MySQL的命令進行安裝了......
安裝完成,一樣的命令啓動服務並查看狀態
至此MySQL5.7安裝成功
新安裝的MySQL爲了安全問題,它給了臨時密碼在 /var/log/mysqld.log 中,如今來查看下臨時密碼
grep 'temporary password' /var/log/mysqld.log
如今來登錄
mysql -uroot -p
前兩個密碼是本次不可用的,由於以前個人安裝啓動失敗的時候信息寫入日誌,我從新安裝的時候沒有清空日誌致使過濾獲得的會有以前密碼信息
最後一個終於成功登錄了
修改密碼
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密碼';
密碼默認要求
MySQL的validate_password插件默認安裝。 這將要求密碼包含至少一個大寫字母,一個小寫字母,一個數字和一個特殊字符,而且密碼總長度至少爲8個字符。
能夠經過修改validate_password_policy來設定密碼的複雜度要求(百度吧),我就設置了一個知足強度要求的密碼了
如今查看下默認的庫
show databases;
最後一步,受權其餘主機能夠遠程登錄
先查看下權限
如今是隻有本機能夠登錄
我是經過修改庫表的信息來受權的
update user set host = '%' where user = 'root';
%表明的就是全部主機
以後須要刷新一下
FLUSH PRIVILEGES;
還有經過命令
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
這裏我沒有嘗試,在版本8的時候是不可行的,不過在5.7有可能還能使用
嘗試遠程登錄下,鏈接成功並且新建了一個測試的庫new_test
大功告成......