1、背景描述 在真實業務場景下,Linux伺服器一般位於內網,所以無法直接訪問互聯網資源; 特別是安裝資料庫的Linux伺服器,在網路方面的管控只會更加嚴格; 因此,需要提前下載好相關資源,再傳輸到內網Linux伺服器進行安裝; 2、下載Mysql的安裝包 下載地址:https://dev.mysq ...
1、背景描述
-
在真實業務場景下,Linux伺服器一般位於內網,所以無法直接訪問互聯網資源;
-
特別是安裝資料庫的Linux伺服器,在網路方面的管控只會更加嚴格;
-
因此,需要提前下載好相關資源,再傳輸到內網Linux伺服器進行安裝;
2、下載Mysql的安裝包
註意:官網的下載速度可能很慢,有任務時間要求的須儘快下載,或者使用其他可靠的下載源
2.1、選擇對應Linux版本的安裝包
2.2、以游客的身份直接下載安裝包
3、安裝Mysql
3.1、傳輸安裝包到Linux
3.2、校驗安裝包
在下載或傳輸過程中,安裝包可能會損壞,因此要校驗其md5是否與官方的(見2.1節的下載截圖)保持一致
md5sum 安裝包名稱
3.3、查詢並卸載系統自帶的Mariadb
rpm -qa | grep mariadb
rpm -e --nodeps 查詢到的名稱
3.4、查詢並卸載系統老舊版本的Mysql
rpm -qa | grep mysql
本例中沒有查找到舊版本的Mysql(因為沒安裝過),所以不用卸載
rpm -e --nodeps 查詢到的名稱
3.5、確保系統已安裝libaio
一般Linux系統預設就已安裝,除非被手動卸載了
rpm -qa | grep libaio
3.6、解壓安裝包
tar -xvf 安裝包名稱
3.7、按順序執行rpm包安裝
安裝時,註意實際rpm包版本號的差異;
此外,還應儘可能使用root用戶來執行安裝命令,以避免各種許可權不足問題;
rpm -ivh mysql-community-common-5.7.43-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.43-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-5.7.43-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.43-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.43-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.43-1.el7.x86_64.rpm
3.8、可能出現的報錯及處理
安裝Mysql的server包時,可能會報錯;這是安裝Linux時,選擇了“最小安裝”環境導致缺少了伺服器方面的相關軟體依賴;
如果是自己安裝的Linux虛擬機,可以重裝Linux,基本環境選擇“基礎設施伺服器”即可,參考該博文3.6節;
如果是第三方(例如信息中心)提供的Linux,可以嘗試聯繫其重新分配具備類似“基礎設施伺服器”環境的Linux;
如果必須使用該Linux環境安裝Mysql,須 離線安裝perl和離線安裝net-tools後,再繼續安裝Mysql的server包;
警告:mysql-community-server-5.7.43-1.el7.x86_64.rpm: 頭V4 RSA/SHA256 Signature, 密鑰 ID 3a79bd29: NOKEY
錯誤:依賴檢測失敗:
/usr/bin/perl 被 mysql-community-server-5.7.43-1.el7.x86_64 需要
net-tools 被 mysql-community-server-5.7.43-1.el7.x86_64 需要
perl(Getopt::Long) 被 mysql-community-server-5.7.43-1.el7.x86_64 需要
perl(strict) 被 mysql-community-server-5.7.43-1.el7.x86_64 需要
4、啟動Mysql
4.1、查看Mysql服務是否啟動
systemctl status mysqld
4.2、啟動Mysql服務
systemctl start mysqld
4.3、核查Mysql服務是否啟動
4.4、設置開機自啟動
systemctl enable mysqld
設置開機自啟動mysqld服務後,還需要重新載入systemd服務,以使配置生效
systemctl daemon-reload
5、調整MySQL登錄配置
5.1、查看隨機初始密碼
MySQL安裝成功後,會自動為root賬號生成一個隨機的初始密碼,並存儲在/var/log/mysqld.log文件中,本例的密碼為QloZfk).h6t,
cat /var/log/mysqld.log | grep password
5.2、使用初始密碼登錄
mysql -uroot -p
5.3、修改root賬號的密碼
@後面的localhost表示本地機器,即允許本機的連接
SET PASSWORD FOR 'root'@'localhost'= "Rain@123";
5.4、授權root賬號遠程訪問
@後面的%表示任意地址,即允許來自任何ip的連接
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Rain@123' WITH GRANT OPTION;
FLUSH PRIVILEGES;
5.5、退出MySQL
exit
6、調整Linux防火牆
MySQL預設使用的埠是3306,想遠程訪問MySQL資料庫,Linux防火牆的3306埠要對外開放
firewall-cmd --add-port=3306/tcp --permanent
增加開放埠後,需要重新載入防火牆配置
firewall-cmd --reload
本文參考
https://www.cnblogs.com/lemon-feng/p/11233227.html
https://www.cnblogs.com/lingyao/p/11984091.html
https://zhidao.baidu.com/question/134136394.html