在linux上安裝mysql5.7時,遇到了很多問題,網上好多資料都不全,有的還是錯誤的,所以自己記錄下正確的安裝步驟以及注意事項
一、安裝
1、更新yum本地緩存
yum clean cache
yum makecache
2、查看系統中是否已安裝mysql
yum list installed | grep mysql
3、卸載系統自帶的mysql及其依賴(防止沖突)
yum -y remove mysql-libs.x86_64
4、下載wget命令
yum install wget -y
5、給centos添加rpm源,並且選擇比較新的源
wget dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
6、安裝下載好的rpm文件
yum install mysql-community-release-el6-5.noarch.rpm -y
安裝成功后,會在/etc/yum.repo.d/下面新增兩個文件
7、修改mysql-community.repo文件
vi mysql-community.repo
上面的每一點都不必須改,不然安裝的時候會報各種奇怪的錯
8、使用yum安裝mysql
yum install mysql-community-server -y
9、查看下mysql的版本,確定是否安裝成功
mysql -V
10、啟動mysql服務
service mysqld start
11、設置mysql開機啟動
chkconfig mysqld on
12、從mysqld.log文件中,查看mysql臨時密碼
grep "password" /var/log/mysqld.log
啟動服務后,會將臨時密碼放在mysqld.log文件中,需要復制出來
13、復制上面的臨時密碼,登錄mysql
mysql -uroot -p臨時密碼
注意事項:
a、如果臨時密碼中有字符 ),需要轉義改為 \),不然會提示字符異常
b、-u 和-p后面不要有空格,不然會提示密碼錯誤
14、修改密碼驗證策略(不更改,可能修改的密碼通不過),然后更改root用戶密碼
set global validate_password_policy=0; set global validate_password_length=4; alter user 'root'@'localhost' identified by '123456';
修改密碼成功后,輸入quit退出,然后使用新密碼重新登錄。
15、設置數據庫用戶在所有ip下都可以訪問,以下用root用戶示例:
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
其中root為用戶,%表示所有權限,密碼為123456
16、刷新mysql的系統權限相關表
flush privileges;
重啟下mysql服務:service mysqld restart
二、開啟防火牆
linux防火牆默認是沒有開通3306端口的,需要手動開通,這樣本地客戶端才能連接上linux上的mysql服務。
1、查詢3306端口是否開啟:
firewall-cmd --query-port=3306/tcp
yes,表示開啟;no表示未開啟
2、在防火牆上,添加需要開放的3306端口:
firewall-cmd --add-port=3306/tcp --permanent
3、重載入添加的端口:
firewall-cmd --reload
4、再次查詢3306端口是否開啟,發現已開啟
三、卸載linux上的mysql
之前在安裝過程中,老是失敗。如果想重新安裝,則需要將mysql相關的全部刪除掉。
1、檢查安裝的mysql組件
rpm -qa | grep -i mysql
2、將查詢出來的文件逐個刪除,如
yum remove mysql-community-common-5.7.32-1.el7.x86_64 yum remove mysql-community-release-el6-5.noarch
3、刪除mysql相關文件
yum remove mysql mysql-server mysql-libs mysql-server rm -rf /var/lib/mysq rm /etc/my.cnf rm –rf /usr/lib64/mysql rm -rf /etc/yum.repos.d/mysql* rm -rf mysql-community-release-el6-5.noarch.rpm
4、查找殘留目錄,然后使用rm命令逐一刪除
whereis mysql