年中辦公地址搬遷,換了新的服務器,測試環境須要從新搭建,如下是當時安裝mysql服務過程當中,記錄的一些問題,現整理以下:html
1.首先下載mysql的安裝包,用 wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.12-1.el6.x86_64.rpm-bundle.tarmysql
2.下載後解壓,解壓之後有以下這麼多文件(其實下載rpm包會有挺多問題,建議直接yum安裝):
3.按照
http://www.cnblogs.com/lonelywolfmoutain/p/5430515.html給出的安裝步驟,是
按順序安裝:
rpm -ivh mysql-community-common-5.7.12-1.el6.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.12-1.el6.x86_64.rpm
rpm -ivh mysql-community-client-5.7.12-1.el6.x86_64.rpm
rpm -ivh mysql-community-server-5.7.12-1.el6.x86_64.rpm
可是按照該步驟安裝會報錯,有些依賴庫一直找不到
更換安裝順序也不行,依舊報錯。將幾個包同時裝,不按照順序安裝,依然不行,報錯:
4.據瞭解是由於用rpm安裝不夠智能,不可以自動的找依賴,因而用yum localinstall -C -y --disablerepo=* *.rpm命令,安裝完成
5.完成後須要注意的一些點:
經過這種方式安裝的mysql,由於是通過編譯的,各個文件都是分開的,因此不能自行選擇安裝目錄,有須要的話能夠查看他的配置文件,默認配置文件在:/etc/my.cnf
也能夠查看服務啓動文件,也就是mysql的systemd配置:cat /run/systemd/generator.late/mysqld.service
這個文件也就是服務啓動命令 systemctl start mysqld.service執行的文件
mysqld.service的標準目錄(yum在線安裝)是在:/usr/lib/systemd/system/mysqld.service ,此處多是由於用下載下來的rpm包,有些不同,若是不知道在哪一個目錄,能夠執行:
systemctl cat mysqld.service,第一行顯示了文件所在目錄:
systemctl start mysqld.service ->啓動
systemctl stop mysqld.service -> 中止
systemctl status mysqld.service ->查看狀態
systemctl enable mysqld.service ->開機自動啓動
6.以上算是完成了安裝,而後鏈接到mysql,用:mysql -u root,發現鏈接不上,報錯沒有密碼,用mysql -u root -p 仍然報錯:
這是由於沒有輸入正確的密碼。在MySQL5.7.6 版本之後,安裝完會在啓動 mysql 進程的時候生成一個用戶密碼,首次登錄須要這個密碼才行。 密碼保存在 mysql 進程的日誌裏,即/var/log/mysqld.log
cat /var/log/mysqld.log | grep 'password'
7.而後用默認密碼登陸成功 mysql -u root -pw&eDxegbT9Ab
8.成功之後,操做數據庫會要求修改密碼
而後輸入:ALTER USER 'root'@'localhost' IDENTIFIED BY 'kuangfofeng';修改密碼,仍然報錯:
這是由於密碼有強度之分,解釋以下,文檔來自
http://www.cnblogs.com/ivictor/p/5142809.html
因此須要修改密碼強度,用set global validate_password_policy=0;
查看密碼相關的長度用:SHOW VARIABLES LIKE 'validate_password%';
9.修改完成密碼後,用新的密碼看是否可以鏈接
10.修改權限,讓其餘的機器也能訪問:
mysql> GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY 'mysql';
mysql> flush privileges;
11.本地虛擬機上安裝部署mysql,要讓其餘用戶能夠登陸鏈接,須要將虛擬機改爲橋接模式:
而且關閉防火牆:sql
cenOS7.3防火牆狀態:firewall-cmd --state
關閉防火牆: systemctl stop firewalld.service
開啓防火牆:systemctl start firewalld.service